コード例 #1
0
def sim_distance(prefs, person1, person2):
    # get common items
    ci = {}
    for item in prefs[person1]:
        if item in prefs[person2]:
            ci[item] = prefs[person1][item] - prefs[person2][item]

    if len(ci) == 0: return 0

    return 1 / (1 + clusters.hypot(ci.values()))
def sim_distance(prefs, person1, person2):
  # get common items
  ci = {}
  for item in prefs[person1]:
    if item in prefs[person2]:
      ci[item] = prefs[person1][item] - prefs[person2][item]

  if len(ci) == 0: return 0

  return 1/(1 + clusters.hypot(ci.values()))
コード例 #3
0
  def testNormal(self):

    self.assertAlmostEquals(5, clusters.hypot([3, 4]))
    self.assertAlmostEquals(5, clusters.hypot([3, 3, 1, 1, 1, 1, 1, 1, 1]))
    self.assertAlmostEquals(5, clusters.euclid_dist([0, 0, 0], [3, 4, 0]))
コード例 #4
0
    def testNormal(self):

        self.assertAlmostEquals(5, clusters.hypot([3, 4]))
        self.assertAlmostEquals(5, clusters.hypot([3, 3, 1, 1, 1, 1, 1, 1, 1]))
        self.assertAlmostEquals(5, clusters.euclid_dist([0, 0, 0], [3, 4, 0]))