我创建了一个图表列表,现在我想为列表中所有图形的所有边分配相同的权重。我知道我可以使用一个简单的循环来做到这一点:
for (i in 1:5) E(graph_dat[[i]])$weight <- 1
但我想知道是否有办法使用lapply
功能吗? (我正在使用igraph
包。)
修改 这是一个可重复的例子:
graph_dat <- list()
for (i in 1:3) graph_dat[[i]] <- erdos.renyi.game(i+3, 1/5, directed = TRUE)
答案 0 :(得分:0)
塔德达拉斯在评论中回答了我的问题。要为函数中的所有图设置edgeweights,可以使用lapply
,如下所示:
lapply(graph_dat, function(x){E(x)$weight <- 1; return(x)})
我在这里复制他的答案,以便我可以将我的问题标记为已回答。