以下表达式在python中是什么意思?

时间:2018-12-04 04:10:39

标签: python numpy pagerank

python中的表达式为:np.ones(len(A)) * (1 - d) / len(A) + d * A.T.dot(P)

这行是什么意思?

下面是该表达式所在的完整代码。该代码是Page rank算法的一部分。

def pagerank(A, eps=0.0001, d=0.85):

    P = np.ones(len(A)) / len(A)

    while True:

        new_P = np.ones(len(A)) * (1 - d) / len(A) + d * A.T.dot(P)

        delta = abs(new_P - P).sum()

        if delta <= eps:

            return new_P

        P = new_P

 

results = pagerank(A)

 

print("Results:", results) # [ 0.13933698,  0.09044235,  0.1300934 ,  0.13148714,  0.08116465, 0.1305122 ,  0.09427366,  0.085402  ,  0.02301397,  0.09427366]

print(sum(results)) # 1.0

print([item[0] for item in sorted(enumerate(results), key=lambda item: -item[1])]) # [0, 3, 5, 2, 6, 9, 1, 7, 4, 8]

0 个答案:

没有答案