使用占位符读取csv

时间:2015-08-10 14:24:11

标签: r csv

我有一个包含5个.csv个文件的文件夹,这些文件的结尾不同:...foot.csv...arm.csv,依此类推。我想使用read.csv来阅读它们,而不必指定完整的文件名,即只给出结尾。我不知道如何最好地做到这一点与MATLAB类似,在那里可以放“* foot.txt”。

 path <- "E:/10 Data/FootHand/07 Temperature/"
 folder <- "10-12 12 14_HL"

 wd <- paste(path, folder, sep="")
 setwd(wd)


Ankle.r <- read.csv("*foot.csv", header = T, sep = "", dec = ".")
 # I know the * does not work in R, but should illustrate what I mean :).

我该如何做到这一点?

2 个答案:

答案 0 :(得分:0)

所以也许解决方案看起来像这样。

csv_files <- list.files('.*foot.csv')

Ankle.r <- data.frame()
for( csv_file in cdv_files) {
    Ankle.r <- rbind(Ankle.r, read.csv(cdv_file))
}

如果标题并不总是相同,则会崩溃。在这种情况下,你需要做更多的事情,比如添加NAs。

答案 1 :(得分:0)

您可以使用以下命令获取文件的正确名称:

grep

然后加载:

lag()

使用这种方法,您甚至不需要费心去了解文件名的确切结尾,因为MySelect会为您提供任何匹配的名称(在这种情况下,&#34; foot& #34)。但是要注意,不要定义匹配多个文件的子字符串!