def test_solve_2(self):
     """ test solve """
     string_in = StringIO("10006:\n1093333\n1982605\n1534853\n")
     writer = StringIO()
     netflix_solve(string_in, writer)
     self.assertEqual(writer.getvalue(),
                      "10006:\n3.7\n3.1\n3.9\nRMSE: 1.26\n")
 def test_solve_3(self):
     """ test solve """
     string_in = StringIO("10010:\n1462925\n52050\n650466\n")
     writer = StringIO()
     netflix_solve(string_in, writer)
     self.assertEqual(writer.getvalue(),
                      "10010:\n2.2\n2.0\n2.0\nRMSE: 1.33\n")
 def test_solve_2(self):
     """ test solves input 2"""
     inp = StringIO("1:\n30878\n2043:\n462685\n")
     writer = StringIO()
     netflix_solve(inp, writer)
     self.assertEqual(
         writer.getvalue(), "1:\n3.7\n2043:\n4.0\nRMSE: 0.18432622758011358\n")
 def test_solve_3(self):
     """ test solves input 3"""
     inp = StringIO("2043:\n2312054\n1:\n30878\n")
     writer = StringIO()
     netflix_solve(inp, writer)
     self.assertEqual(
         writer.getvalue(), "2043:\n4.6\n1:\n3.7\nRMSE: 2.5588590159754325\n")
 def test_solve_1(self):
     """ test solves input 1"""
     inp = StringIO("2043:\n1417435\n2312054\n462685\n")
     writer = StringIO()
     netflix_solve(inp, writer)
     self.assertEqual(
         writer.getvalue(), "2043:\n3.7\n4.6\n4.0\nRMSE: 2.1283858730975753\n")
 def test_netflix_solve_3 (self) :
     re = StringIO.StringIO("COSTUMERS_RATE\n1 3.4\n2 4.4\n3 2.4\n5 1.2\n4 2.2\nMOVIE_RATES\n2 2.5\n1 3.5")
     getCatch(re)
     r = StringIO.StringIO("1:\n2:")
     w = StringIO.StringIO()
     netflix_solve(r, w)
     self.assert_(w.getvalue() == "1:\n2:\n")
 def test_solve_3(self):
     """Test 3"""
     str_in = StringIO("1:\n30878\n2647871\n1283744")
     str_out = StringIO()
     netflix_solve(str_in, str_out)
     self.assertEqual(
         str_out.getvalue(), "1:\n3.7\n3.3\n3.6\nRMSE: 0.57")
Beispiel #8
0
 def test_solve_1(self):
     """Test netflix_solve"""
     reader = StringIO("1123:\n448549\n2444222\n1522889\n")
     writer = StringIO()
     netflix_solve(reader, writer)
     self.assertEqual(writer.getvalue(),
                      "1123:\n3.3\n2.9\n4.1\nRMSE: 0.4148335185443161\n")
Beispiel #9
0
    def test_solve_1(self):
        """Test netflix_solve"""
        reader = StringIO("1:\n1\n2\n3\n4\n5\n6\n2:\n1\n2\n3\n4\n")
        writer = StringIO()

        true_dict = {
            ("1", "1"): 5,
            ("1", "2"): 1,
            ("1", "3"): 2,
            ("1", "4"): 4,
            ("1", "5"): 1,
            ("1", "6"): 2,
            ("2", "1"): 5,
            ("2", "2"): 4,
            ("2", "3"): 5,
            ("2", "4"): 5
        }
        movie_avg_dict = {1: 3.2, 2: 4.1}
        cust_avg_dev_dict = {1: 0.7, 2: 0.3, 3: 0.1, 4: 0.1, 5: 0.5, 6: 0.8}
        netflix_solve(reader, writer, true_dict, movie_avg_dict,
                      cust_avg_dev_dict)

        self.assertEqual(
            writer.getvalue(),
            "1:\n3.9\n3.5\n3.3\n3.3\n3.7\n4.0\n2:\n4.8\n4.3\n4.1\n4.1\n1.5")
 def test_netflix_solve_6(self):
     """
     Test 6 to see if
     solving correctly
     """
     read = StringIO("1:\n1\n2\n3\n4\n2:\n5")
     write = StringIO()
     actual_ratings = {1: {1: 4, 2: 5, 3: 5, 4: 5}, 2: {5: 5}}
     movie_cache = {'1': 4.5, '2': 2.1525}
     movie_year_cache = {1: 1988, 2: 1975}
     cust_year_cache = {
         1: {
             1988: 2.5
         },
         2: {
             1988: 2.0
         },
         3: {
             1988: 4.3
         },
         4: {
             1988: 4.9
         },
         5: {
             1975: 3.9
         }
     }
     netflix_solve(read, write, actual_ratings, movie_cache,
                   movie_year_cache, cust_year_cache)
     self.assertEqual(write.getvalue(),
                      "1:\n3.3\n2.8\n5.0\n5.0\n2:\n2.4\nRMSE: 1.57\n")
Beispiel #11
0
 def test_solve_3(self):
     """ test solves input 3"""
     inp = StringIO("2043:\n2312054\n1:\n30878\n")
     writer = StringIO()
     netflix_solve(inp, writer)
     self.assertEqual(
         writer.getvalue(), "2043:\n4.6\n1:\n3.7\nRMSE: 2.5264965005457753\n")
Beispiel #12
0
 def test_solve_1(self):
     """ test solves input 1"""
     inp = StringIO("2043:\n1417435\n2312054\n462685\n")
     writer = StringIO()
     netflix_solve(inp, writer)
     self.assertEqual(
         writer.getvalue(), "2043:\n3.6\n4.6\n3.9\nRMSE: 2.087128003334406\n")
Beispiel #13
0
 def test_solve_2(self):
     """ test solves input 2"""
     inp = StringIO("1:\n30878\n2043:\n462685\n")
     writer = StringIO()
     netflix_solve(inp, writer)
     self.assertEqual(
         writer.getvalue(), "1:\n3.7\n2043:\n3.9\nRMSE: 0.2180552033726668\n")
 def test_netflix_solve_4(self):
     """ test_netflix_solve_4 """
     reader = StringIO("2043:\n1417435\n1:\n30878")
     writer = StringIO()
     netflix_solve(reader, writer)
     self.assertEqual(writer.getvalue(),
                      "1:\n30878 3.7\n2043:\n1417435 3.6\nRMSE: 0.47")
 def test_netflix_solve_3(self):
     """
     Test 3 to see if
     solving correctly
     """
     read = StringIO("1:\n1\n2\n3\n4\n2:\n5")
     write = StringIO()
     actual_ratings = {1: {1: 2, 2: 3, 3: 4, 4: 3}, 2: {5: 1}}
     movie_cache = {'1': 4.5, '2': 2.1525}
     movie_year_cache = {1: 1988, 2: 1975}
     cust_year_cache = {
         1: {
             1988: 1
         },
         2: {
             1988: 4.987
         },
         3: {
             1988: 5
         },
         4: {
             1988: 3
         },
         5: {
             1975: 3
         }
     }
     netflix_solve(read, write, actual_ratings, movie_cache,
                   movie_year_cache, cust_year_cache)
     self.assertEqual(write.getvalue(),
                      "1:\n1.8\n5.0\n5.0\n3.8\n2:\n1.5\nRMSE: 1.08\n")
 def test_solve(self):
     r = StringIO("1:\n30878\n2647871\n1283744\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(
         w.getvalue(),
         "1:\n3.7\n3.3\n3.6\nRMSE: 0.53 (two decimal places)\n")
 def test_solve_2(self):
     """Sample run throughs"""
     str_in = StringIO("10:\n1952305\n1531863\n1000:\n2326571\n977808")
     str_out = StringIO()
     netflix_solve(str_in, str_out)
     self.assertEqual(
         str_out.getvalue(), "10:\n2.9\n2.6\n1000:\n3.2\n2.9\nRMSE: 0.22")
 def test_netflix_solve_2(self):
     """ test_netflix_solve_2 """
     reader = StringIO("2043:\n1417435\n2312054")
     writer = StringIO()
     netflix_solve(reader, writer)
     self.assertEqual(writer.getvalue(),
                      "2043:\n1417435 3.6\n2312054 4.3\nRMSE: 2.37")
 def test_netflix_solve_5(self):
     """
     Test 5 to see if
     solving correctly
     """
     read = StringIO("1:\n1\n2\n3\n4\n2:\n5")
     write = StringIO()
     actual_ratings = {1: {1: 4, 2: 5, 3: 5, 4: 5}, 2: {5: 5}}
     movie_cache = {'1': 3.7, '2': 1.75}
     movie_year_cache = {1: 1988, 2: 1975}
     cust_year_cache = {
         1: {
             1988: 1.5
         },
         2: {
             1988: 2.5
         },
         3: {
             1988: 4.6
         },
         4: {
             1988: 2.9
         },
         5: {
             1975: 3.6
         }
     }
     netflix_solve(read, write, actual_ratings, movie_cache,
                   movie_year_cache, cust_year_cache)
     self.assertEqual(write.getvalue(),
                      "1:\n1.5\n2.5\n4.6\n2.9\n2:\n1.6\nRMSE: 2.38\n")
Beispiel #20
0
 def test_solve_2(self):
     w = StringIO()
     netflix_solve(self.input_small2, w)
     self.assertEqual(
         w.getvalue(), "9996:\n2.43\n2.77\n3.67\n3.43\n3.58\n"
         "2.96\n4.37\n3.45\n2.94\n3.42\n3.70\n"
         "2.60\n3.57\n3.37\n2.56\n3.66\n2.91\n"
         "4.23\n3.81\nRMSE: 1.45")
 def test_solve_4(self):
     """solve test 4"""
     read = StringIO(
         '1:\n30878\n2647871\n1283744\n2488120\n317050\n1904905\n1989766\n14756\n1027056\n1149588\n1394012\n1406595\n2529547\n1682104\n2625019\n2603381\n1774623\n470861\n712610\n1772839\n1059319\n2380848\n548064\n123456\n'
     )
     write = StringIO()
     netflix_solve(read, write)
     self.assertNotEqual(write.getvalue(), '')
Beispiel #22
0
 def test_solve_2(self):
     """
     Solves for a single movie
     """
     read = StringIO("10:\n1952305\n1531863\n")
     write = StringIO()
     netflix_solve(read, write)
     self.assertEqual(write.getvalue(), "10:\n3.2\n3.1\nRMSE: 0.15\n")
 def test_solve_1(self):
     """
     test solve
     """
     reader = StringIO("1:\n30878\n")
     writer = StringIO()
     netflix_solve(reader, writer)
     self.assertEqual(writer.getvalue(), "1:\n3.7\nRMSE: 0.3\n")
 def test_solve_2(self):
     r = StringIO("10:\n1952305\n1531863\n1000:\n2326571\n977808\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(
         w.getvalue(),
         "10:\n2.9\n2.7\n1000:\n3.2\n2.9\nRMSE: 0.44 (two decimal places)\n"
     )
Beispiel #25
0
 def test_solve_3(self):
     """
     Solves for a single movie
     """
     read = StringIO("10000:\n200206\n523108\n")
     write = StringIO()
     netflix_solve(read, write)
     self.assertEqual(write.getvalue(), "10000:\n3.6\n3.5\nRMSE: 1.05\n")
 def test_solve1(self):
     """
     Test that output is in string format
     """
     reader = StringIO("1:\n30878\n2647871\n1283744\n2488120")
     writer = StringIO()
     netflix_solve(reader, writer)
     self.assertIsInstance(writer.getvalue(), str)
 def test_netflix_solve_3(self):
     """ test_netflix_solve_3 """
     reader = StringIO("2043:\n1417435\n2312054\n462685")
     writer = StringIO()
     netflix_solve(reader, writer)
     self.assertEqual(
         writer.getvalue(),
         "2043:\n1417435 3.6\n2312054 4.3\n462685 3.8\nRMSE: 1.94")
Beispiel #28
0
 def test_solve_1(self):
     """
     Solves for a single movie
     """
     read = StringIO("1:\n30878\n2647871\n1283744\n2488120\n317050\n1904905\n1989766\n14756\n1027056\n1149588\n1394012\n1406595\n2529547\n1682104\n2625019\n2603381\n1774623\n470861\n712610\n1772839\n1059319\n2380848\n548064\n")
     write = StringIO()
     netflix_solve(read, write)
     self.assertEqual(write.getvalue(), "1:\n3.6\n3.4\n3.6\n4.2\n3.6\n3.7\n3.5\n3.6\n3.8\n3.6\n3.3\n3.6\n3.8\n3.8\n3.2\n3.8\n3.6\n4.1\n3.9\n3.9\n3.3\n4.3\n3.6\nRMSE: 0.82\n")
 def test_solve_1(self):
     """Example"""
     str_in = StringIO(
         "13:\n615010\n1860468\n2131832\n")
     str_out = StringIO()
     netflix_solve(str_in, str_out)
     self.assertEqual(
         str_out.getvalue(), "13:\n4.9\n4.7\n5.0\nRMSE: 0.22")
Beispiel #30
0
 def test_solve_2(self):
     '''
         Testing the netflix_solve() function
     '''
     read_io = StringIO("10000:\n200206")
     write_io = StringIO()
     netflix_solve(read_io, write_io)
     self.assertEqual(write_io.getvalue(), "10000:\n5.0\nRMSE: 0.0")
Beispiel #31
0
 def test_solve_3(self):
     '''
         Testing the netflix_solve() function
     '''
     read_io = StringIO("10:\n1531863")
     write_io = StringIO()
     netflix_solve(read_io, write_io)
     self.assertEqual(write_io.getvalue(), "10:\n3.0\nRMSE: 0.02")
Beispiel #32
0
 def test_netflix_solve_3 (self) :
     r = StringIO('2043:\n1417435\n2312054\n462685\n2849:\n1198093\n1129293\n1417435\n1894792\n')
     w = StringIO()
     netflix_solve(r,w)
     val = findall(r'\d\.\d\d+',w.getvalue())
     # print(val)
     self.assertEqual(len(val),1)
     self.assertTrue(float(val[0]) < 1.75)
Beispiel #33
0
 def test_solve(self):
     '''
         Testing the netflix_solve() function
     '''
     read_io = StringIO("1:\n317050\n1772839")
     write_io = StringIO()
     netflix_solve(read_io, write_io)
     self.assertEqual(write_io.getvalue(), "1:\n4.9\n5.0\nRMSE: 0.05")
Beispiel #34
0
 def test_solve_1(self):
     """
         Tests solve using test version
     """
     reader = StringIO("8191:\n2104692\n")
     writer = StringIO()
     netflix_solve(reader, writer)
     self.assertEqual(writer.getvalue(), "8191:\n4.3\nRMSE: 0.31\n")
 def test_solve1(self):
     """
     testing netflix_solve
     """
     read = StringIO("1:\n30878\n2647871\n1283744\n")
     write = StringIO()
     netflix_solve(read, write)
     self.assertEqual(write.getvalue(), "1:\n3.7\n3.0\n3.9\nRMSE: 0.79\n")
Beispiel #36
0
 def test_solve_1 (self) :
     r = StringIO("1:\n30878\n2647871\n1283744")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "1:\n3.7\n3.3\n3.8\nRMSE: 0.63")
 def test_solve_1(self):
     r = StringIO("1:\n548064\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "1:\n3.6\n")
 def test_solve_2 (self) :
     r = StringIO("6683:\n2505263\n1237027\n")
     w = StringIO()
     netflix_solve(r,w)
     self.assertEqual (w.getvalue(), "6683:\n2.8\n1.9\nRMSE: 1.49")
#!/usr/bin/env python3

import sys, os

from Netflix import netflix_solve

# ----
# main
# ----

if __name__ == "__main__":
    netflix_solve(sys.stdin, sys.stdout)
Beispiel #40
0
 def test_solve_2 (self) :
     r = StringIO("1:\n30878\n2647871\n1283744\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "3.7\n3.5\n3.6\n")
Beispiel #41
0
 def test_solve_1 (self) :
     r = StringIO("12126:\n1120091\n21560\n1684241\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "12126:\n4.1\n3.2\n3.9\nRMSE: 1.28")
Beispiel #42
0
 def test_solve_2 (self) :
     r = StringIO("2043:\n1417435\n2312054\n2043:\n1417435\n2312054") #two sets
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "2043:\n3.6\n4.6\n2043:\n3.6\n4.6\nRMSE:2.5807\n")
Beispiel #43
0
 def test_netflix_solve_2 (self) :
     r = StringIO('2043:\n1417435\n2312054\n462685\n2849:\n1198093\n1129293\n1417435\n1894792\n')
     w = StringIO()
     netflix_solve(r,w)
     self.assertNotEqual(w.getvalue(),'')
     self.assertTrue('RMSE:' in w.getvalue())
 def test_solve1 (self) :
   r = io.StringIO("1:\n14756\n")
   w = io.StringIO()
   netflix_solve(r, w)
   self.assertEqual(w.getvalue(), "1:\n3.7\nRMSE: 0.30654350027973454\n")
Beispiel #45
0
 def test_solve_3 (self) :
     r = StringIO("430:\n2573892\n1843756\n2540558\n68149\n2143918\n164344\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "430:\n4.9\n3.7\n4.4\n4.1\n3.1\n3.7\nRMSE: 2.08")
Beispiel #46
0
 def test_solve_2 (self) :
     r = StringIO("4327:\n2604511\n1862650\n1456536\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "4327:\n3.4\n3.0\n3.2\nRMSE: 0.83")
Beispiel #47
0
 def test_solve_2 (self) :
     r = StringIO("10000:\n2311278\n928262")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "10000:\n3.5\n3.1\nRMSE: 1.23")
Beispiel #48
0
 def test_solve_4 (self): 
     r = StringIO("")
     w = StringIO()
     netflix_solve(r,w)
     self.assertEqual(w.getvalue(),"RMSE:0.0\n")
Beispiel #49
0
 def test_solve_3 (self) :
     r = StringIO("16575:\n30878\n2647871\n1283744\n2311278")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "16575:\n3.7\n3.7\n3.8\n3.9\nRMSE: 1.07")
 def test_solve_3 (self) :
     r = StringIO("668:\n1830\n277783\n1300110")
     w = StringIO()
     netflix_solve(r,w)
     self.assertEqual (w.getvalue(), "668:\n4.4\n4.1\n4.0\nRMSE: 0.68")
Beispiel #51
0
 def test_solve_3 (self) : #
     r = StringIO("2043:\n1417435\n2312054\n2043:\n1417435\n2312054\n2043:") #two sets and an incomplete
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "2043:\n3.6\n4.6\n2043:\n3.6\n4.6\n2043:\nRMSE:2.5807\n")
Beispiel #52
0
# ---------------------------
# CS 373 Project 3
# Anh-Khoi Dang - add562
# ---------------------------

# -------
# imports
# -------

import sys, time

from Netflix import netflix_read, netflix_eval, netflix_solve


# ----
# main
# ----
#s = time.clock()

if len(sys.argv) != 4 : 
    exit("Usage: python RunNetflix.py <movie titles file> <training set directory> <probe file>")
else :
    movieTitlesFile = sys.argv[1]
    trainingSetDir = sys.argv[2]
    probeFile = sys.argv[3]
    
netflix_solve(sys.stdout, trainingSetDir, probeFile)

#e = time.clock()
#print (e - s), "seconds"
Beispiel #53
0
 def test_solve_1 (self) :
     r = StringIO("1:\n30878\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "3.7\n")
 def test_solve_2 (self) :
     input_string = StringIO()
     output_string = StringIO()
     netflix_solve(input_string, output_string)
     self.assertEqual("RMSE: 0.00\n", output_string.getvalue())
Beispiel #55
0
 def test_solve_3 (self) :
     r = StringIO("1:\n30878\n10:\n1952305\n1531863\n")
     w = StringIO()
     netflix_solve(r, w)
     self.assertEqual(w.getvalue(), "3.7\n3.3\n3.2\n")
 def test_solve2 (self) :
   r = io.StringIO("1:\n712610\n1772839\n1059319\n2380848\n548064\n")
   w = io.StringIO()
   netflix_solve(r, w)
   self.assertEqual(w.getvalue(), "1:\n4.1\n4.2\n3.1\n5.0\n3.5\nRMSE: 0.7601868708858408\n")
 def test_solve_3 (self) :
     input_string = StringIO("10:\n1952305\n1:\n30878\n")
     output_string = StringIO()
     netflix_solve(input_string, output_string)
     self.assertEqual("1:\n3.7\n10:\n3.3\nRMSE: 0.00\n", output_string.getvalue())
 def test_solve_1 (self) :
     r = StringIO("1:\n30878\n317050\n")
     w = StringIO()
     netflix_solve(r,w)
     self.assertEqual (w.getvalue(), "1:\n3.8\n3.9\nRMSE: 0.79")
 def test_solve4 (self) :
   r = io.StringIO("3676:\n1982226\n1495499\n1669842\n2639376\n1982597\n1426939\n")
   w = io.StringIO()
   netflix_solve(r, w)
   self.assertEqual(w.getvalue(), "3676:\n3.7\n3.6\n4.5\n2.9\n4.2\n4.2\nRMSE: 0.6597351087461958\n")
 def test_solve3 (self) :
   r = io.StringIO("10007:\n1204847\n2160216\n248206\n")
   w = io.StringIO()
   netflix_solve(r, w)
   self.assertEqual(w.getvalue(), "10007:\n2.0\n2.7\n2.2\nRMSE: 1.6254316644013882\n")