为 igraph 列表创建循环?

Creating a loop for a list of igraphs?

我在 R 中使用 igraph,我有一个边缘列表 (g),其中包含 78 个组中发生的大约 9000 多个交互。我使用分解函数创建了一个包含 78 个独立 igraph (dg) 的列表。 我想计算每个 igraph 中每个向量的特征向量。

我可以使用

对每个图表单独执行此操作
eigen_centrality(dg[[1]], directed = FALSE, scale = TRUE, weights = NULL)

但是,单独绘制所有 78 个图表将非常耗时,我想创建一个函数或循环来遍历列表 (dg) 并为我完成此操作。恐怕我还没有写出一些代码来执行此操作,因此我无法提供任何可重现代码的示例。

有谁能提出一个可以做到这一点的解决方案吗? 每个图都在名称 dg[[x]] 下,x 是 1 到 78。

非常感谢任何意见或建议。

lapply 函数应该能够为您处理这个问题。您没有提供任何示例代码,但这应该可以帮助您入门:

g=sample_gnp(1000,1/1000)
dg=decompose(g,min.vertices=2)

eigen.list=lapply(dg,eigen_centrality,directed=F,scale=T,weights=NULL)
lapply(eigen.list,"[[","vector")