def computeDistanceVectors(mepsStats, mep1, mep2): similarity, nb_votes = similarity_vector_measure(mepsStats, mep1, mep2, 'COS') if nb_votes > 0: #similarity/=nb_votes if nb_votes>0 else 0. similarity /= nb_votes else: similarity = float('nan') distance = 1 - similarity return distance
def pairwiseComparaisonVectors(mepsStatistics, measure='COS'): for key1 in mepsStatistics.keys(): for key2 in mepsStatistics[key1].keys(): agree_prop, nb_votes = similarity_vector_measure( mepsStatistics, key1, key2, measure) if nb_votes > 0: similarity = agree_prop / nb_votes else: similarity = float('nan') distance = 1 - similarity mepsStatistics[key1][key2]['SIMILARITY'] = similarity mepsStatistics[key1][key2]['DISTANCE'] = distance return mepsStatistics
def get_sim_vectors(stats,user1,user2,comparaison_measure='COS'): agreementProp,nb_votes=similarity_vector_measure(stats, user1, user2, comparaison_measure) return agreementProp,nb_votes