在igraph中如何获取Leiden聚类的实际成员而非索引?
解决igraph中Leiden聚类获取实际节点数据的问题
你已经通过Leiden算法完成聚类,leid1[0]返回的是节点索引列表,要获取如7.0、21.0这类实际节点ID,核心是通过igraph的顶点序列(G.vs)根据索引提取对应属性值,步骤如下:
- 确认你的图中存储实际节点ID的属性名(比如常见的
name,或是你自定义的node_id等) - 通过索引提取对应属性:
也可以简化为一行代码:# 获取第0个聚类的节点索引 cluster_indices = leid1[0] # 提取对应属性值(这里假设属性名为name,根据实际情况替换) cluster_actual_ids = G.vs[cluster_indices]['name'] print(cluster_actual_ids)cluster_actual_ids = G.vs[leid1[0]]['name']
如果你的实际节点ID是数值类型(如7.0、21.0),只要该属性存储的是对应数值,就能直接得到对应的数值列表,后续即可用此列表映射名称完成数据核对。
内容的提问来源于stack exchange,提问作者Manasa Kota
相关产品推荐
相关产品推荐

