6

rbindR 3.0.3: 1 つの列の平均を計算できるように、40 個の csv ファイルを 1 つのファイルにまとめたいと思っています。

調べました:

  • このウェブサイト
  • R in a Nutshell
  • R_Introソース
  • ?rbind HelpRスタジオで

答えが見つかりません。

提案/指針はありますか?

4

2 に答える 2

14

ここからの回答を使用する [複数のファイルをインポートしてそれらをインデックス化する]

拡張子が .csv のファイルを一覧表示する - これは、作業ディレクトリ内の .csv ファイルのみが読み取り対象であると想定しています。

files  <- list.files(pattern = '\\.csv')

ファイルをリストに読み込みます - ヘッダーはありますか?

tables <- lapply(files, read.csv, header = TRUE)

rbind ファイル

combined.df <- do.call(rbind , tables)

次に、平均を見つけることができます-どの列が数値であるかを見つけます

s <- sapply(combined.df, is.numeric)

数値変数の平均を見つける

colMeans(combined.df[s])
于 2014-04-19T12:22:38.590 に答える
0

より現代的なプライヤーアプローチでは:

files <- list.files(...)
data <- adply(files, 1, read.table)

(土曜日の午後: テストされていないコードですが、アプローチは問題ありません)

于 2014-04-19T14:10:00.270 に答える