You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Pandas DataFrame行余弦相似度结果转为原格式DataFrame

如何将余弦相似度结果转换为原DataFrame格式?

没问题!你只需要利用原DataFrame里的ciiu4n4列来给余弦相似度结果数组设置索引和列名就行,完全不用手动处理,哪怕是600×600的大表也能一键搞定。具体步骤如下:

解决方案代码

import pandas as pd
from sklearn.metrics.pairwise import cosine_similarity

# 假设你的原DataFrame是mpg_data,已经计算得到余弦相似度结果result
# 提取原DataFrame中的行业编码标签
labels = mpg_data['ciiu4n4']

# 将相似度数组转换为带标签的DataFrame
similarity_df = pd.DataFrame(result, index=labels, columns=labels)

# (可选)如果需要完全匹配原格式:将索引转为第一列并命名为ciiu4n4
similarity_df = similarity_df.reset_index().rename(columns={'index': 'ciiu4n4'})

代码解释

  • 提取标签:labels = mpg_data['ciiu4n4'] 从原DataFrame中取出行业编码列,确保后续的行和列都能和原数据一一对应。
  • 构建相似度DataFrame:pd.DataFrame(result, index=labels, columns=labels) 直接用标签设置新DataFrame的行索引和列名,这样每一个相似度值都会对应正确的行业编码对。
  • 匹配原格式(可选):如果需要和原DataFrame的结构完全一致(第一列是ciiu4n4),通过reset_index()把索引转为普通列,再重命名为ciiu4n4即可。

效果验证

用你提供的小例子测试后,会得到完全符合你期望的结构:

ciiu4n4A0111A0112A0113
A01111.00.953571180.95814892
A01120.953571181.00.89993795
A01130.958148920.899937951.0

内容的提问来源于stack exchange,提问作者PAstudilloE

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:36:06