如何解决用于PageRank计算的映射器功能
我目前正在了解PageRank,并正在尝试计算网页网络的PageRank。但是,我不熟悉使用python和数据结构,因此遇到了很多困难。
目前,我有一个包含2列的数据框。第一个列出了网络中的节点i,i = [1,9999]。第二个包含目标节点或出站链接j的列表,每个i都指向该列表。
以较小的数据框为例
node dest_node
0 [1,2,3]
1 [2]
2 [0,3]
3 [2,3]
第一步,我要创建一个映射器,将其应用于dest_node中的每一行时,将占用1 / n,其中n是网络中元素的总数除以列表的长度在那一行。所以看起来像这样:
node dest_node
0 [{1 : 1/12},{2: 1/12},{3: 1/12}]
1 [{2 : 1/4}]
2 [{0 : 1/12,{2 : 1/12},{3 : 1/12}]
3 [{2 : 1/8},{3 : 1/8}]
在此之后,我要对dest_nodes键进行分组,并对所有属于每个dest_node的值求和。例如
(1 : 1/12,2 : 1/12 + 1/4 + 1/12 + 1/8,3 : 1/12 + 1/12 + 1/8....)
我相信itertools和collections会有所帮助。我尝试过的是使用apply和map,但是没有用。一路上出现了很多错误
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。