【问题标题】:Formatting igraph pie vertex values from dataframe从数据帧格式化 igraph 饼图顶点值
【发布时间】:2022-01-07 09:03:33
【问题描述】:

对于使用 igraph 进行网络分析,我正在尝试设置我的顶点元数据,以便有数字向量可用于根据我的数据帧中列的不同组合制作饼图顶点。

用这个例子来说明我的数据设置:

df <- data.frame(vName=c('Joe','Rose','Matt','Val'), Red=c(2.5, 1, 1, 0.9), Blue=c(3, 3, 1, 1), Yellow=c(2.9, 2.1, 3.2, 1.1))
df
#   vName Red Blue Yellow
# 1   Joe 2.5    3    2.9
# 2  Rose 1.0    3    2.1
# 3  Matt 1.0    1    3.2
# 4   Val 0.9    1    1.1

通过组合来自特定列的数据,将向量组装为每一行的列的最佳方法是什么?前任。新列 RedBlue 将返回向量值,如下所示:

df
#   vName Red Blue Yellow   RedBlue
# 1   Joe 2.5    3    2.9  2.5, 3.0
# 2  Rose 1.0    3    2.1  1.0, 3.0
# 3  Matt 1.0    1    3.2  1.0, 1.0
# 4   Val 0.9    1    1.1  0.9, 1.0

df$RedBlue
#[[1]]
#[1] 2.5 3.0

#[[2]]
#[2] 1.0 3.0

#[[3]]
#[3] 1.0 1.0

#[[4]]
#[4] 0.9 1.0

或者在使用顶点元数据在 igraph 中构建饼图顶点的上下文中,是否有另一种更有意义的方法?

非常感谢!

【问题讨论】:

    标签: r vector attributes igraph


    【解决方案1】:

    你可以试试

    df <- transform(
      df,
      RedBlue = asplit(cbind(Red, Blue), 1)
    )
    

    你会看到

    > df$RedBlue   
    [[1]]
     Red Blue
     2.5  3.0
    
    [[2]]
     Red Blue
       1    3
    
    [[3]]
     Red Blue
       1    1
    
    [[4]]
     Red Blue
     0.9  1.0
    
    > df
      vName Red Blue Yellow  RedBlue
    1   Joe 2.5    3    2.9 2.5, 3.0
    2  Rose 1.0    3    2.1     1, 3
    3  Matt 1.0    1    3.2     1, 1
    4   Val 0.9    1    1.1 0.9, 1.0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-21
      • 1970-01-01
      • 1970-01-01
      • 2021-08-18
      相关资源
      最近更新 更多