lapply
を使用して、さまざまなファイルをソースからリストにインポートする必要があります。複数のcsvファイルをリストにインポートし、存在しないファイルをスキップする
ポイントは、私が望むcsvファイルが、 100であるが、ソースには80個しか含まれていない。
ソースに含まれていないファイルをスキップするにはどうすればよいですか?
ここに私のコード:
stations <- read.csv("stations.csv", header = TRUE)
filenames <- paste(stations$ID, "csv", sep = ".") #define the filenames
directory <- "~I/am/not/that/dumb" #set directory where take files to read
filenames <- file.path(directory, filenames) #construct the files paths
list <- lapply(filenames, read.csv, header = FALSE, stringsAsFactors = FALSE) #import the csv into a list
しかし、私はエラーました:ファイル26003.csvがソースに含まれていないので、明らかに
Error in file(file, "rt") : cannot open the connection In addition: Warning message: In file(file, "rt") : cannot open file '/Users/I/am/not/that/dumb/26003.csv': No such file or directory
を。
存在しないファイルをスキップする方法についてのご意見はありますか?
合計でインポートするcsvファイルは>> 100ですので、手動ではできません。
はおそらくの 'dir(ディレクトリ)の結果'やファイル名を持つこのの交点を使用し使用することができます実際にディレクトリにある最初のcsv内のファイル名のベクトルを返す必要があります。 – lmo
'file.exists'で存在しないファイルを' 'フィルタリングすることはできませんか? – Abdou
皆さんありがとうございます。私はあなたにお尋ねします:) –