【问题标题】:how to calculate dataframe row wise cosine similarity如何计算数据帧行余弦相似度
【发布时间】:2018-10-02 16:32:44
【问题描述】:

大家好,我想知道假设我有一个 python 数据框,并且我想计算数据框的第一行与数据框的其余行之间的余弦相似度。有人可以帮忙吗

【问题讨论】:

标签: python dataframe row cosine-similarity


【解决方案1】:

假设您的数据框有数值, 这里的 'u' 指的是数据框的第一行,

import pandas as pd
import numpy as np
u = df.iloc[0]
cos_sim_list = []
norm_u = np.linalg.norm(u)
for i in range(1, df.shape[0]):
    v = df.iloc[i]
    dot = np.dot(u, v)
    norm_v = np.linalg.norm(v)
    cos_sim = (dot/norm_u * norm_v)
    cos_sim_list.append(cos_sim)

cos_sim_list

【讨论】:

    猜你喜欢
    • 2015-05-24
    • 2017-01-18
    • 2015-05-17
    • 1970-01-01
    • 2017-07-07
    • 2018-04-11
    • 2022-01-07
    • 2022-07-07
    相关资源
    最近更新 更多