将属性分配给图形列表

Assigning attributes to a list of graphs

我已经创建了一个图表列表,现在我想为列表中所有图表的所有边分配相同的权重。我知道我可以使用一个简单的循环来做到这一点:

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)

Tad Dallas 在评论中回答了我的问题。要为函数内的所有图形设置边权重,可以使用 lapply,如下所示:

lapply(graph_dat, function(x){E(x)$weight <- 1; return(x)})

我将他的回答复制到这里,以便我可以将我的问题标记为已回答。