我有许多.csv文件,它们都包含放在同一个目录中的相同字段,但每个文件中的值都是针对特定日期的。但是,.csv文件中的数据不包含日期 - 只有文件名包含日期。根据R中的文件名创建一个新字段
我目前阅读和使用下面的代码合并不同的.csv文件:
group <- list.files(pattern="[.]csv")
fun <- function(x) {
df <- read.csv(x , header = TRUE)
}
big_df <- ldply(group, fun)
的输出,那么看起来是这样的:
print(big_df)
value_a value_b value_c
1 1 444 10
2 5 7364 9
3 32 573 14
4 7 253 16
和文件,这是阅读从这样的样子:
print(group)
[1] "PSM_filter_report_04242015_1.csv" "PSM_filter_report_04242015_2.csv" "PSM_filter_report_04252015_1.csv"
[4] "PSM_filter_report_04272015_1.csv"
我想作为一部分的过程s是使用substr(),或者一些可比较的函数,将文件名中的日期添加为我创建的文件中的新字段。这样一来,新的数据帧是这样的:
big_df
value_a value_b value_c date
1 1 444 10 04242015
2 5 7364 9 04242015
3 32 573 14 04252015
4 7 253 16 04272015
只要日期被读入作为一个因素或字符(让我不会失去前导零),我会使用as.Date()方便地转换日期。