1
所以我一直在尝试这一段时间,但只是不能得到它的工作。如果您查看图片,您会看到x和y轴上有2个人,并且这两个人都是他们给电影的评分。问题是我如何计算曼哈顿与人之间的距离。曼哈顿距离推荐系统Python
所以这是我已经有... 编辑 我忘了说,首选项是PERSONNAME为重点,并与第二字典作为值的字典。第二字典包含电影,重点和评价作为价值..和PERSON1和2只是名称字符串可以在首选项中找到
def sum_manhattan(prefs,person1,person2):
"""Calculates the Manhattan distance between two critics"""
total = 0
##assume person1 is the x axes and person 2 is the y axes
x = prefs[person1]
y = prefs[person2]
for movie in x:
if movie in y:
total = abs(x[movie]-y[movie])
return total
任何帮助都是欢迎的。
什么是不工作?我看到在循环中你总共= abs(...)。这是你在你的程序中做了什么,或者是你在问题中错误输入的内容? – civilu
我们是否假定prefs,person1和person2的结构与编程集体智能(图像被解除)相同? http://answers.oreilly.com/topic/1066-how-to-find-similar-users-with-python/ – Alkini
我很抱歉..是的,这正是它是什么,但这是我的教授给我的 我忘了说prefs是一个以personname为关键字的词典,第二个词典是它的值。第二个字典包含电影作为关键和评级作为价值..而person1和2只是名称的字符串,可以在prefs –