看板 R_Language 關於我們 聯絡資訊
[軟體熟悉度]: 入門 [問題敘述]: x檔是個dataframe檔,year是有200601(2006第一季)到201404(第四季) 我想要把每一年每一季都filter出一個dataframe檔再去比較每年每季的 一些問題,但就先卡在無法存多個dataframe [程式範例]: x <- read.csv(file.choose()) #讀取外部資料的csv檔 for(i in 1:4){ for(j in 6:14){ y <- filter(x,x$year==200000+j*100+i) ↑↑ 問題出在我不知道這個地方該怎麼打才能存多個dataframe } } 按照我現在這樣打只會存到最後一筆的201404的資料 該如何全部跑出來後讓我去做比較呢?! 還是有更好的方法 不要用for?! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.187.139 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1432496723.A.26D.html
celestialgod: split(x,year) 05/25 09:13
celestialgod: split(x,x$year) 05/25 09:17
celestialgod: library(plyr);dlply(x,.(year),function(y)y) 05/25 09:18
celestialgod: library(plyr); plyr:::splitter_d(x,.(b)) 05/25 09:20
celestialgod: 第一行不要理他QQ 上面三行是三種方法 05/25 09:20
celestialgod: 第四行 .(b)改成.(yrar) 05/25 09:22
celestialgod: QQ...其實就是718篇 05/25 09:23
lofu: 強者我同學 05/25 13:28
gsuper: y=list(NULL) ; a=1 ; for(i){for(j){ y[[a]] ; a=a+1}} 05/25 13:40
andrew43: 用list吧,像gsuper提的方法。 05/25 18:41