2016-11-22 10 views
-2

1から10までのさまざまな時間ブロックのファイル名サマーセットのサブセットを保存したいとします.lm1は、ブロック&ブロックの最初のブロックblock.lm2のデータを読み込みます。私はループのために下に書いたが、それは働いていないWats問題?私のforループでエラーが発生する

library(openxlsx) 
Master=read.xlsx("Master File from Apr-11 to Feb-15.xlsx",sheet="Sheet1") 
summer=subset(Master, Season=="Winter") 
for (i in 1:10) { 
print(i) 
lm[i]=subset(summer,Block==i) 

} 
+2

これについては、「split(summer、summer $ Block)」とも考えられます。 – Frank

答えて

0

私の提案は、データをリストに保存することです。 lapplyまたはsapplyを使用すると、その行を処理できます。

out <- vector("list", 10) 

for (i in 1:10) { 
    message(sprintf("Processing iteration number %s", i)) 
    out[[i]] <- subset(summer, Block == i) 
} 
+0

それは働いていますが、Out [1]、Out [2]などをcsv形式でout1.csv、out2.csvとして保存したいのですが。私は何をすべきか。 – Engg

+0

@Engg各要素を繰り返し処理することができます。あなたは 'sapply'や' lapply'を試すことができます。 –

関連する問題