【问题标题】:Calculating Percentages for Pagerank [closed]计算Pagerank的百分比[关闭]
【发布时间】:2021-03-24 02:19:41
【问题描述】:

我必须在 Pagerank 上进行一个项目,并且需要计算它出现在每个页面上的概率。文本文件也太大而无法放入 Excel 文件中,我在想出计算概率的方法时遇到了问题。计算它的最有效方法是什么?下面列出的是一个添加概率的示例和一个没有概率的示例。例如,页面 0 的概率是 25%,因为有 4 个链接。该文本文件称为 pagerank.txt。我可以使用 Python、R、SQL 和 Excel。

0  1  0.25
0  2  0.25
0  3  0.25
0  4  0.25

1  2  
1  3  
1  4  
1  5  
1  6 

【问题讨论】:

  • 您的描述没有解释百分比。

标签: python sql r probability pagerank


【解决方案1】:

在 R 中,您可以在基础 R、dplyr 或 data.table 中执行此操作。

假设您已将df 中的数据读入R,并且两列分别为V1 和V2,您可以这样做:

#Base R
transform(df, prob = 1/ave(V2, V1, FUN = length))

#  V1 V2 prob
#1  0  1 0.25
#2  0  2 0.25
#3  0  3 0.25
#4  0  4 0.25
#5  1  2 0.20
#6  1  3 0.20
#7  1  4 0.20
#8  1  5 0.20
#9  1  6 0.20

#dplyr
library(dplyr)
df %>% group_by(V1) %>% mutate(prob = 1/n())

#data.table
library(data.table)
setDT(df)[, prob := 1/.N, V1]

数据

df <- structure(list(V1 = c(0L, 0L, 0L, 0L, 1L, 1L, 1L, 1L, 1L), V2 = c(1L, 
2L, 3L, 4L, 2L, 3L, 4L, 5L, 6L)), class = "data.frame", row.names = c(NA, -9L))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-29
    • 2020-09-23
    • 1970-01-01
    • 2011-06-01
    • 2021-01-10
    相关资源
    最近更新 更多