海量数据挖掘课的编程作业。
实现PageRank,计算某个网页最终的rank值,数据是谷歌提供的。
作业反馈结果显示,代码正确。一共进行了26次迭代,总共运行时间83s。
数据链接http://snap.stanford.edu/data/web-Google.txt.gz。
代码:
from math import fabs
from time import time
data = open('web-Google.txt')
N = 875713
tax_rate = 0.8
eps = 1e-6
r = [1./N for i in range(N)]
r2 = [1./N for i in range(N)]
out_degree = [0 for i in range(N)]
m = [[] for i in range(N*2)]
hash_table = [-1 for i in range(N*2)]
idx = 0
def hash(x):
global idx
if hash_table[x] == -1:
hash_table[x] &#