1

1つのディレクトリ内のすべてのファイルについて、各ファイルをデータフレームに読み込み、ファイルを処理します。たとえば、列全体でcorを計算します。例えば:

files<-list.files(path=".") <br>
names <- substr(files,18,20)

for(i in c(1:length(names))){
     name <- names[i]    
     assign (name, read.table(files[i]))
     sapply(3:ncol(name), function(y) cor(name[, 2], name[, y], ))      
}

「名前」はコードの最後のステートメントの文字列ですが、データフレームの「名前」を処理するにはどうすればよいですか?

4

2 に答える 2

0

これを行う方法は、読み取りたいすべてのファイルを 1 つのフォルダーに入れてから、リストを操作することです。

your.dir <- ""  # adjust
files <- list.files(your.dir)

your.dfs <- lapply(file.path(your.dir, files), read.table)

your.dfsすべてのデータ フレームを保持するリストになりました。lapply を使用してすべてのデータ フレームに対して関数を同時に実行することも、たとえばyour.dfs[[1]]最初のデータ フレームにアクセスするなど、通常のサブセット構文を使用して個々のデータ フレームにアクセスすることもできます。

于 2013-11-12T12:59:19.433 に答える