python 欧氏距离,Python欧几里得算法
我用下面的代码从编程集体智能,这是一个函数,从书中计算出两个影评人之间的距离。在
这个函数对字典中排名的差异求和,但是n维的现实的灯泡距离也包括该和的平方根。在
既然我们用同一个函数来给每个人排序,我们的平方根与否都无关紧要,但我想知道这有什么特别的原因吗?在从数学导入平方根计算
#返回人员一和人员2基于距离的相似性得分
定义模拟距离(首选,人员1,人员2):
#获取共享项目列表
si={}
对于首选项[人员1]中的项目:
如果项目在首选项[人员2]中:
si[项目]=1
#如果它们没有共同的评级,则返回0
如果len(si)==0:返回0
#将所有差异的平方相加
平方和=sum([pow(prefs[人员1][项目]-首选项[人员2][项目],2)
对于首选项[人员1]中的项目,如果首选项[人员2]中的项目]])
返回1/(1平方和)
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。