从分割的数据框元素创建向量

时间:2019-11-19 16:40:01

标签: r list dataframe vector igraph

我正在使用igraph,我想使用mark.groups函数来指定网络中的某些组。该函数要求使用数字节点标识符矢量(例如mark.groups = c(1,5,7))指定组。

我有一个组列表,并以数据框格式关联:

groups
Group_ID Node_ID
1        1
1        2
1        3
2        4
2        5

我没有在mark.groups函数中手动键入这些内容,而是将数据框拆分为子数据框列表:

members <- groups %>%
   group_split(Group_ID, keep = FALSE)

然后我在绘制图表时尝试参考这些元素。这段代码有效:

plot(net,
   mark.groups = c(members[[1]], members[[2]])
)

但是我希望能够引用所有拆分元素,而不必单独键入每个元素。我已经尝试过了,但是会引发Error in members[[1]]:members[[2]] : NA/NaN argument错误:

plot(net,
   mark.groups = c(members[[1]]:members[[2]])
)

我认为可以使用以下方法创建元素名称列表:

mem_count <- length(members)
mem_list <- paste("members[[", 1:mem_count[1], "]],", sep = "")

,然后在plot()函数中引用它们:

plot(net,
   mark.groups = memlist
)

但这似乎也不起作用,给出此错误Error in simple_vs_index(x, ii, na_ok) : Unknown vertex selected

任何想法都值得赞赏。

0 个答案:

没有答案