我在存盤內部回圈的資料時遇到問題。這里描述的問題被簡化了,不要太具體。
我有一個包含 2 年的資料庫(df)。我分開了那 2 年a <- split(df,df$year)。我現在需要每月計算一次。因此我使用了一個新的回圈。為了存盤我使用的結果excRet <- rep (0,24)。回圈作業,但我只能看到最后一個輸出。內部回圈覆寫第一個結果。我確信有更好的方法來存盤我的資料。不幸的是,我對 R 和編程很陌生。
for (i in 1:2) {
year <- a[[`i`]]
#split the year into 12 months
spm <- split(year, year$Month)
for (j in 1:12) {
b <- spm[[`j`]]
exrt <- mean(b$excessReturn)
excRet [j] <- exrt
j = j 1
}
i= i 1
}
(僅從月份計算是不可能的,因為內部回圈中有更多的選擇標準。我將這些排除在外,以免使問題過于復雜。回圈作業正常,存盤來自內部回圈的資料是問題)
uj5u.com熱心網友回復:
Waru,如果沒有可重復的例子,它有點難。這是一個使用 mtcars 的簡單示例,展示了如何遍歷兩個不同的索引。如果這不合適,請嘗試將 dput 與您的實際資料樣本一起使用。
outer<- NULL
for( i in 1:5){
inner <- NULL
for( j in 1:5){
a <- mean( mtcars[ i, j ])
inner <- cbind( inner , a )
}
outer <- rbind( outer , inner)
}
print( outer )
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/468181.html
