我设法通过使用this优雅.csv
解决方案导入10个lapply
文件。
输出现在是list
10 data.frames
。
每个data.frame都包含变量year
和value
:
file_names <- dir("../XYZ", pattern = glob2rx("*.csv"))
data_list <- lapply(filenames, read.table, header = TRUE)
head(data_list[[1]])
year value
1 200712 2320,00
2 200712 120,00
3 200712 188,00
4 200712 1328,00
5 200712 46,00
6 200712 98,00
head(data_list[[2]])
year value
1 200812 320,00
2 200812 1120,00
3 200812 1288,00
4 200812 1128,00
5 200812 746,00
6 200812 938,00
很遗憾,变量year
的格式为yyyymm
,但我希望它为yyyy
。
因此,我想使用其他lapply
或Map
来更改每个data.frame中year
的格式。类似的东西:
data_list <- lapply(data_list[["year"]], FUN = substr(1,4), ... )
或:
data_list <- Map(substr(1,4), data_list, "year")
但那不起作用......有什么想法吗?
答案 0 :(得分:1)
你可以尝试
data_list <- lapply(data_list, function(x) {x$year <- substr(x$year, 1,4)
x})