【问题标题】:igraph and trying to get names of nodes in a clusterigraph 并尝试获取集群中节点的名称
【发布时间】:2018-02-04 07:01:58
【问题描述】:

我有一个网络(Ex: A->B , B->C , J->K, etc) 所以有些像A 连接到BC,有些只有一个链接,例如JK。我使用 igraph (get_graph_from_data_frame) 创建了我的网络。我使用clusters()$csize 来查看存在多少个单独的集群以及每个集群中有多少个节点。我希望得到这些节点的名称。有没有办法做到这一点?我只想能够识别有多少只连接到另一个节点或有多少连接到一个 2 节点。

这是我的代码:

network_billing <- data.frame( Billing_tree$Source, Billing_tree$Target)
net_billing <- graph_from_data_frame(d=network_billing)
library(cluster)
clusters1 <- clusters(net_billing)$csize
clusters1 <- as.data.frame(clusters1)

我有多少个集群和每个集群中的节点。是否有将这些节点名称从每个集群中提取出来的功能?

【问题讨论】:

    标签: networking cluster-computing nodes igraph


    【解决方案1】:

    您没有提供您的数据,所以我提供一个非常简单的图表作为示例。

    library(igraph)
    
    relations <- data.frame(from=c("Bob", "Cecil", "Cecil", "David",
                                   "David", "Esmeralda", "Tom", "Tom"),
                            to=c("Alice", "Bob", "Alice", "Alice", "Bob", 
                        "Alice", "Dick", "Harry"))
    g <- graph_from_data_frame(relations)
    plot(g)
    

    现在我们可以获得您想要的组件。

    clusters1 = clusters(g)
    V(g)[clusters1$membership == 1]
    + 5/8 vertices, named, from 42645a7:
    [1] Bob       Cecil     David     Esmeralda Alice    
    V(g)[clusters1$membership == 2]
    + 3/8 vertices, named, from 42645a7:
    [1] Tom   Dick  Harry
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-30
      • 2016-11-27
      • 2021-01-15
      • 2019-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多