Rでディレクトリ内のcsvをループで読み込み

N811_notepcwosawarubiz500-thumb-727x500-2197

こんな感じのcsvファイルがたくさんあるとして

length,weight
150,40
160,70

いっきにcsvファイルを読み込みたい時のコード。

csvfile <- dir()
cnt <- grep(“csv”,csvfile)
for ( i in 1:length(cnt)){
d <- read.csv(csvfile[cnt[i]],header=T)
image.file <- paste(“test”,i,”.png”)
png(image.file) ’グラフを出力したい場合
plot(d[,1],d[,2])
dev.off() ’グラフを出力したい場合
}

 

dir()でディレクトリ内のファイルネームを変数csvfileに収納。

(ディレクトリは上のファイルのディレクトリの変更)

このままだとcsvファイル以外も入っているので、grep()でcsvファイルだけ抜き出し。

例えばディレクトリ内の2番目と3番目のファイルがcsvの場合

grep(“csv”,csvfile)

[1] 2

[2] 3

 なのでcsvfile[2],csvfile[3]をread.csvで読みこめばOK。

ループにしたいので一旦変数cntに収納。

cntの要素数がファイル数なのでループはi in 1:length(cnt)まで。

csvファイルの読み込みはread.csv(“ファイル名”,header = T(ヘッダーが無ければF))

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Spam Protection by WP-SpamFree