从R stuidio中的多个csv文件中提取和编译特定的数据行

时间:2015-11-15 21:52:26

标签: r csv

我在实验室工作,我们每天收集100多个.csv文件,记录时间锁定事件。我们需要从每个文件中获取特定的时间点输出,并且手动提取这些数字效率不高。

我想知道有没有人想过如何编写一个可以提取和编译这些时间点的R脚本?我一直在研究mcsv_r()函数;但是我需要知道时间点出来的文件,我不确定该功能是否有用。

这是一张图片,可以解释我想要做的事情比我更好,这是来自单个文件(文件#1)30:

The numbers in the first column that correspond to 253, 254, and 251 in the third column is the data I'd like to extract

在编码时,我充其量只是一个新手。非常感谢你的帮助!

1 个答案:

答案 0 :(得分:1)

尝试这样的事情:

# get a list of the csv files in the directory
files = list.files(path = ".", pattern = "csv")

n = data.frame()
for (file in files) {
  csv = read.csv(file)
  # X3 is the default third column name -- you might have to change that
  data = csv[csv$X3 %in% c(251, 253, 254), ]
  data$file = file # add a new column with the filename
  n = rbind(n, data)
}

write.csv(n, file = "compiled_data.csv")

您的图片显示第一列中的一些空白字段。如果要排除这些行,则必须对其进行轻微编辑。