创建多个以 pa.exp 为增量的优惠依恋图

create multiple prefential attachment igraphs with increments on pa.exp

到目前为止,我正在尝试创建多个 igraph,但我只有: `

set.seed(1)
   gs <- list()
   for (x in seq_len(100L)) {
   gs[[x]] <- sample_pa_age(10000, pa.exp=1.05, aging.exp=0.0, aging.bin=1000)
   E(gs[[x]])$weight <- sample(1:5, ecount(gs[[x]]), T)
   }
   plot(gs[[1]], edge.width = E(gs[[1]])$weight) # plot first graph

` 但我想要做的是将 pa.exp 从 =1 更改为 =3,增量为 .05.,生成多个图形。怎么办?

使用 for 循环:

pa <- seq(1, 3, 0.05)
gs <- vector("list", length(pa))
i <- 1
for(x in pa){
  gs[[i]] <- sample_pa_age(10000, pa.exp=x, aging.exp=0.0, aging.bin=1000)
  E(gs[[i]])$weight <- sample(1:5, 9999, T)
  i <- i+1
}

或者,您可以使用 lapply,这样您就不必事先创建列表:

my_graph <- function(x, n=10000){
  g <- sample_pa_age(n, pa.exp=x, aging.exp=0.0, aging.bin=1000)
  E(g)$weight <- sample(1:5, n-1, T)
  return(g)
}
gs <- lapply(seq(1, 3, 0.05), my_graph)