2014-11-24 51 views
1

我是R初學者,找不到任何幫助我的東西。 我想生成大小不同的隨機矩陣。我想使用for循環和函數,但代替許多矩陣,它給了我一個向量。在for循環中用genweb生成隨機矩陣

library(bipartite) 
zeroo <-matrix() 
for(i in 10:50){ 
    zeroo[i]<-genweb(10, i, dens=2) 
    } 
+1

嘗試'zeroo < - lapply(10:50,函數(X)genweb(10,X,窩點= 2))'這會給你你矩陣的列表。這是R中不同大小對象的唯一存儲選項。 – 2014-11-24 10:40:11

回答

1

for迴路可以改變

col1 <- 10:50 
zeroo <- vector('list', length(col1)) #create a `list` 
for(i in seq_along(col1)){ 
    zeroo[[i]] <- genweb(10, col1[i], dens=2) # 
} 

length(zeroo) 
#[1] 41 

zeroo[[1]] 
#  [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] 
#[1,] 5 5 2 6 0 0 3 1 15  2 
#[2,] 2 2 0 1 1 0 0 0 2  0 
#[3,] 5 3 2 1 1 0 1 0 3  1 
#[4,] 3 3 3 2 1 0 0 2 6  5 
#[5,] 2 7 1 5 0 0 2 0 5  8 
#[6,] 7 3 2 1 1 0 2 0 9  0 
#[7,] 1 0 1 1 0 1 0 0 1  0 
#[8,] 4 2 3 6 0 0 0 0 6  2 
#[9,] 3 0 0 2 0 0 0 0 0  0 
#[10,] 6 3 2 4 1 2 0 0 3  2