pandas - 我怎样才能找到数据框熊猫中极少数项目之间的相关性
问题描述
嗨,我是数据框的新手,请帮我解决这个问题。
我的 dataframe1 看起来像这样(它有 itemID 和项目名称),我只有 7 个项目
itemID ItemName
1 abc
2 fds
3 btbtr
4 gerhet
5 dfhkwjfn
6 adaf
7 jdkj
我的 Dataframe2 如下所示:
其中有用户 ID 和 itemID,这里我有 20k 个用户,每个用户前面都有一个 itemid(可以是多个)
userId itemID
23213 2
31267 3
52144 1
52144 2
87467 6
我怎样才能找到项目之间的项目相关性?我希望 item1 与 item3 和 item6 高度相关
我试过 corrwith() 但我得到的只是 NaN。
请帮我找到这个,在此先感谢
解决方案
这是我能想到的方法。可能很粗糙,但我们开始吧。
- 删除所有前面只有 1 项的用户
- 现在您只有拥有多个项目的用户。
- 记下项目同时出现的计数。即制作排序item-item的数据框:count
1-2 : 50
3-5 : 35
等等。现在,在获得所有一对一的相关性之后,将计数值标准化为 0-1 之间,您就可以在所有项目之间获得相关性。
希望能帮助到你!