如何在R中提取和使用文件名

时间:2017-11-20 11:48:45

标签: r

我有一堆文件,其名称代表创建它的日期。例如: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中完成这项工作吗?

1 个答案:

答案 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