這是一個循環問題,我無法完全理解。使用for循環填充矩陣R
我希望矩陣(w)的每一行在矩陣(mat)中重複填充時間「d」。 matrix(run)就是這樣,我可以通過記錄通過矩陣(w)運行的值來檢查我的循環是否正確運行。
這裏是我的代碼現在:
x<-c(0,0,0,0)
y<-c(0,0,0,0)
z<-c(10,50,100,150)
a<-8
b<-4
d<-5
w<-cbind(x,y,z)
run<-matrix(0, ncol=3, nrow=d, byrow=T)
for(h in 1:d){
mat<-matrix(0, ncol=3, nrow=a, byrow=T)
for(j in 1:a){
for(i in 1:b){
mat[j,]<- w[i,]
}
}
run[h,]<-mat[1,]
}
肯定有一些錯誤,我在矩陣(MAT)填充,因爲我輸入相同的值反覆而不是按順序的方式。在這種情況下,正確的語法應該是什麼?
編輯:抱歉,澄清。我想運行循環5次,併爲每次運行創建一個矩陣(mat)(見下文),其中填充隨後的矩陣(w)行。
V1 V2 V3
1 0 0 10
2 0 0 10
3 0 0 10
4 0 0 10
5 0 0 10
V1 V2 V3
1 0 0 50
2 0 0 50
3 0 0 50
4 0 0 50
5 0 0 50
等等...
'w [rep(1:nrow(w),each = d),]'? – Henrik