您将如何从文件列表中创建摘要动物园?

时间:2019-07-08 13:35:44

标签: r dataframe zoo

假设我有许多具有以下格式的csv文件:

Date,col1,col2,col3
8/1/2017,2,3,4
8/5/2017,4,6,7

Date,col1,col2,col3
8/1/2017,2,3,4
8/3/2017,2,5,4
8/5/2017,4,6,7

我将如何创建一个动物园对象,让每个日期向我显示每一列的总数?

使用上面的文件内容,我想创建以下动物园对象:

Date      | col1 | col2 | col3
8/1/2017      4     6      8
8/3/2017      2     5      4
8/5/2017      8    12     14
  

注意:我更喜欢base-R解决方案(可以使用Zoo包)

1 个答案:

答案 0 :(得分:1)

我们可以通过使用read.zoo读取列表中的文件来使用lapply

library(zoo)

files <- list.files("C:\\test", pattern = ".*.csv", full.names = TRUE)
out.list <- lapply(files, function(x) read.zoo(x, header=TRUE, sep = ",", index.column = "Date"))
summary <- Reduce("+", do.call(merge, args = c(out.list, retclass = "list", fill = 0)))
colnames(summary) <- colnames(out.list[[1]])
相关问题