我有一個不同範圍的原始輸入數據集。我想將它們作爲R列表存儲。數據是4維的。需要幫助填寫列表For循環在R
我創建了一個for循環來存儲嵌套列表中的數據,但數據似乎只落入最後一個列表。我似乎無法找到我的循環問題。
我有兩個不同的列表。在其中一箇中,我將數據存儲在一起,工作正常,所以我似乎沒有數據採集的問題。至於嵌套循環,它會跳過第一層列表並正確存儲最後獲取的數據。我附上了代碼,我會很感激任何幫助。謝謝。
mask1 = list()
mask2 = list()
mask3 = list()
mask4 = list()
mask5 = list()
mask1$vid = list()
mask2$vid = list()
mask3$vid = list()
mask4$vid = list()
mask5$vid = list()
mask1$all = list()
mask2$all = list()
mask3$all = list()
mask4$all = list()
mask5$all = list()
for (i in 1:6766){
f <- i%%199
v <- ceiling(i/199)
if (f==0){
f=199;
}
mask1$vid[[v]] = list()
mask2$vid[[v]] = list()
mask3$vid[[v]] = list()
mask4$vid[[v]] = list()
mask5$vid[[v]] = list()
mask1$vid[[v]][[f]] = list()
mask2$vid[[v]][[f]] = list()
mask3$vid[[v]][[f]] = list()
mask4$vid[[v]][[f]] = list()
mask5$vid[[v]][[f]] = list()
data1 = read.table(mask1_dir[i])
data2 = read.table(mask2_dir[i])
data3 = read.table(mask3_dir[i])
data4 = read.table(mask4_dir[i])
data5 = read.table(mask5_dir[i])
data1=t(data1)
data2=t(data2)
data3=t(data3)
data4=t(data4)
data5=t(data5)
for (j in 1:8) {
m1 <- data1[,j]
m2 <- data2[,j]
m3 <- data3[,j]
m4 <- data4[,j]
m5 <- data5[,j]
m1<-m1[m1>0]
m2<-m2[m2>0]
m3<-m3[m3>0]
m4<-m4[m4>0]
m5<-m5[m5>0]
mask1$vid[[v]][[f]][[j]] = t(data.frame(m1))
mask2$vid[[v]][[f]][[j]] = t(data.frame(m2))
mask3$vid[[v]][[f]][[j]] = t(data.frame(m3))
mask4$vid[[v]][[f]][[j]] = t(data.frame(m4))
mask5$vid[[v]][[f]][[j]] = t(data.frame(m5))
mask1$vid[[v]][[f]][[j]]
if (v==1 & f==1){
mask1$all[[j]] = t(data.frame(m1))
mask2$all[[j]] = t(data.frame(m2))
mask3$all[[j]] = t(data.frame(m3))
mask4$all[[j]] = t(data.frame(m4))
mask5$all[[j]] = t(data.frame(m5))
}
else{
for (k in 1:length(m1)){
mask1$all[[j]][(length(mask1$all[[j]])+1)] = m1[k]}
for (k in 1:length(m2)){
mask2$all[[j]][(length(mask2$all[[j]])+1)] = m2[k]}
for (k in 1:length(m3)){
mask3$all[[j]][(length(mask3$all[[j]])+1)] = m3[k]}
for (k in 1:length(m4)){
mask4$all[[j]][(length(mask4$all[[j]])+1)] = m4[k]}
for (k in 1:length(m5)){
mask5$all[[j]][(length(mask5$all[[j]])+1)] = m5[k]}
}
}
}
複雜的代碼,以及缺乏有關預期內容細節的解釋。然後當我粘貼它看看會發生什麼,找不到'mask1_dir',所以我認爲你需要簡化這個問題併發佈一個可重現的例子。 –