Exemplo n.º 1
0
    def setUp(self):
        log.debug("setup...")
        self.filtNA = Filt(missingaszero=False)
        self.filtNA.addUser('u1', {'i1': 5.0, 'i2': 3.0, 'i3': 2.5})
        self.filtNA.addUser('u2', {'i1': 2.0, 'i2': 2.5, 'i3': 5.0})
        self.filtNA.addUser('u3', {'i1': 2.5})
        self.filtNA.addUser('u4', {'i1': 5.0, 'i3': 3.0})
        self.filtNA.addUser('u5', {'i1': 4.0, 'i2': 3.0, 'i3': 2.0})

        self.filtZE = Filt(missingaszero=True)
        self.filtZE.addUser('u1', {'i1': 5.0, 'i2': 3.0, 'i3': 2.5})
        self.filtZE.addUser('u2', {'i1': 2.0, 'i2': 2.5, 'i3': 5.0})
        self.filtZE.addUser('u3', {'i1': 2.5})
        self.filtZE.addUser('u4', {'i1': 5.0, 'i3': 3.0})
        self.filtZE.addUser('u5', {'i1': 4.0, 'i2': 3.0, 'i3': 2.0})
Exemplo n.º 2
0
        sys.exit(2)

if not input:
    print("Input file not specified.")
    usage()
    sys.exit(2)

# Load titles
with open(bookinput, 'rb') as f:
    # DictReader expects first row to define fieldnames
    reader = csv.DictReader(f, delimiter=';', quotechar='"')
    for line in reader:
        books[line['ISBN']] = line['Book-Title'], line['Book-Author']

# Load ratings from input file
filt = Filt(missingaszero=False)
with open(input, 'rb') as f:
    # DictReader expects first row to define fieldnames
    reader = csv.DictReader(f, delimiter=';', quotechar='"')
    for line in reader:
        filt.addUserRatings(line['User-ID'],
                            {line['ISBN']: line['Book-Rating']})

print("User count: %d" % filt.getUserCount())
print("Item count: %d" % filt.getItemCount())

# "042505313X";"Dune";"Frank Herbert"
# "083760463X";"The Martian Way and Other Stories";"Isaac Asimov"
# "0425042367";"Podkayne of Mars";"Robert A. Heinlein"
# "0425043770";"Stranger Strg Lnd";"Robert A. Heinlein"
# "0425043797";"Dune Messiah";"Frank Herbert"