python - Python:如何找到具有值列表的 2 列的相关性?
问题描述
我有一个像
title titlenew
0 Two Workers Are Struck By Motor Vehicle And O... two workers are struck by motor vehicle and o...
1 Foreman Is Fatally Crushed When Forklift Tips... foreman is fatally crushed when forklift tips...
2 Employee Suffers Abdominal Fracture In Fall F... employee suffers abdominal fracture in fall f...
3 Employee'S Body Is Caught In Asphalt Machine ... employee's body is caught in asphalt machine ...
4 Employee Is Punctured In Abdomen With Nail employee is punctured in abdomen with nail
我将其转换为用于 NLP 处理的向量。他们现在看起来像
card2vec_title card2vec_titlenew
0 [0.09446411579847336, 0.18325935304164886, 0.1... [0.01013200543820858, -0.015507892705500126, 0...
1 [0.11135150492191315, 0.16989260911941528, 0.1... [0.0871051624417305, 0.07891112565994263, -0.0...
2 [-0.019224125891923904, 0.3285079598426819, -0... [0.052899472415447235, 0.2530696988105774, -0....
3 [0.06179530546069145, 0.10462947934865952, 0.0... [0.05848287418484688, 0.062050893902778625, -0...
4 [0.0604548417031765, 0.2742682993412018, -0.00... [0.09018705040216446, 0.23053207993507385, -0.
我的问题是,我怎样才能找到这两列的相关分数(或余弦相似度)。做df.card2vec_titlenew.corr(df.card2vec_title)
给出一个错误说
/ 不支持的操作数类型:“list”和“int”
我的问题是相关性,因此没有提供我如何将字符串转换为向量的代码。帮助表示赞赏。谢谢
解决方案
相关性是一对一或多对一的函数,因此是 list 和 int 的错误,因为它需要一个 int 值而不是值列表。
你可以做的事情:
对每一行中的多个值进行点积,然后找到两列之间的相关性
另一种方法是为每个值拆分列(类似这样),然后找到新列之间的相关性。但是,如果您的列的单词长度不同,这可能会很棘手。
推荐阅读
- daphne - 达芙妮没有记录错误
- java - 为什么在快速功率问题中输出为负?
- excel - Excel 和 Google 表格:当列有 #N/A 时对电子表格数据范围进行求和
- list - 将元素添加到 Kotlin 列表开头的最佳方法是什么
- javascript - 无法从 iframe 调用函数
- python-3.x - 如何从同一列的值创建多个列?
- php - python子进程在本地工作,但不在服务器上
- cxf - 如何使用 JDK 12 运行 Apache CXF wadl2java?
- mysql - 从 POLYGON 对象获取最小/最大点
- docker - 在预构建的节点映像中安装 RPM 包