我在這裏有嵌套for循環的代碼。我希望得到的輸出是由嵌套循環產生的矩陣列的平均值的矩陣。所以,內部循環應該運行一個隨機向量的1000次模擬,並且每次運行一個函數。這工作正常,並將輸出吐入R.但我想將輸出從嵌套循環保存到一個對象(1000行和11列的矩陣),然後僅打印該矩陣的colMeans,以由外部循環執行。從R的雙循環打印對象
我認爲問題在於我將內部循環的結果賦值給obj矩陣的步驟。我已經嘗試了obj [i,],obj [i],obj [[i]]等所有的變體,但沒有成功。 R告訴我它只是一個維度的對象。
x=ACexp
obj=matrix(nrow=1000,ncol=11,byrow=T) #create an empty matrix to dump results into
for(i in 1:ncol(x)){ #nested for loops
a=rep(1,times=i) #repeat 1 for 1:# columns in x
b=rep(0,times=(ncol(x)-length(a))) #have the rest of the vector be 0
Inv=append(a,b) #append these two for the Inv vector
for (i in 1:1000){ #run this vector through the simulations
Inv2=sample(Inv,replace=FALSE) #randomize interactions
temp2=rbind(x,Inv2)
obj[i]<-property(temp2) #print results to obj matrix
}
print.table(colMeans(obj)) #get colMeans and print to excel file
}
任何想法如何解決這個問題?