如何计算数据帧的行余弦相似度

2024-04-25 12:03:08 发布

您现在位置:Python中文网/ 问答频道 /正文

大家好,我想知道,假设我有一个python数据帧,我想计算数据帧第一行与数据帧其余行之间的余弦相似性。谁能帮忙吗


Tags: 数据相似性
1条回答
网友
1楼 · 发布于 2024-04-25 12:03:08

假设你的数据帧有数值, 这里的“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

相关问题 更多 >