我有一堆文件,其名称代表创建它的日期。例如:10-02-2017.csv,17-02-2017.csv等。
对于我拥有的所有文件(大约60个),我想添加一个额外的列,该列等于文件名中的日期。例如:
如果文件名是10-02-2017.csv,我想添加标题为" date"的列。每个条目等于10-02-2017
如果文件名是17-02-2017.csv,我想添加一个标题为" date"的列。每个条目等于10-02-2017
等等。有人可以指导我如何在R中完成这项工作吗?
答案 0 :(得分:1)
list.files
是你的朋友。它有一个参数(full.names
,见?list.files
)以保留或不保留整个路径。我猜您需要将其设置为FALSE
。
然后,您只需要从文件名中删除.csv
并将其转换为data.frame
:
# lf <- list.files(your_path, full.names=FALSE) # what you should do by your side
lf <- c("10-02-2017.csv", "17-02-2017.csv") # to simulate a `list.files`
data.frame(date=gsub(".csv", "", lf))
date
1 10-02-2017
2 17-02-2017
如果您已经拥有感兴趣的变量your_df$date <- gsub(".csv", "", lf)
,也可以data.frame
。