我有一个图,已经计算了其向量的PageRank,现在想为具有最高PageRank的20个节点计算聚类。到目前为止,我正在使用graph-tool和networkx。
是否有已知的实用方法?
答案 0 :(得分:0)
由于您的问题有点含糊,我将假设您正在寻找一种获取文档集合的中央集群的方法,请尝试回答。在这张图片上,中央的5个项目簇将是[B,C,E,F,D]
用伪造的伪代码,会是这样吗?
n = 0
center = node.with_highest_rank()
cluster = {center: {}}
current_connexion = center
while n<20:
main_connexion = node.citing_node_with_higher_rank(current_connexion).filter(not in cluster.keys())
cluster["center"] = {main_connexion: {}}
n += 1
# if ranks are higher on connexion level 2 than the next node on level 1, look down
if node.citing_node_with_higher_rank(main_connexion).rank > node.citing_node_with_higher_rank(current_connexion).rank:
current_connexion = main_connexion
建议:在堆栈溢出时,公众通常是开发人员。开发人员需要具体的用例,具体的代码和精确的定义。如果您有更一般的理论/科学问题(通常在这里是图论),请查看其他社区,例如Computer Sciences