我有日期格式的文件列表" YYYYMMDD"。我需要以这种格式提取文件和修改日期,以便必须在过去7天内获取文件名。假设我的文件名为" 2014-08-12",#34; 2014-08-11",#34; 2014-08-10"," 2014 -08-08"和" 2014-08-01"。现在,在这5个文件中,我必须保留4个文件,这些文件是过去7天及其修改时间。
我在R中使用Code:
library(tools)
y<-data.frame(FileName=basename(file_path_sans_ext(gsub(".*\\\\.*\\\\(.*)","\\1",dir()))),Modifiedtime=file.info(dir())$mtime)
i=1
z<-data.frame(a=y$FileName,b=y$Modifiedtime)
for (i in seq_len(nrow(z)))
{
if(difftime(Sys.Date(), as.Date(y$FileName[i]), units = "days") <= 7)
{
dt<- cbind(z$a[i],z$b[i])
}
}
我在dt中只获得1个文件名。我的问题是如何获得其他3个文件名。
答案 0 :(得分:1)
要选择四个文件名,您可以这样做:
fn <- c("2014-08-12","2014-08-11","2014-08-10","2014-08-08","2014-08-01")
(fn <- fn[difftime(Sys.Date(), fn, units = "days") <= 7])
# [1] "2014-08-12" "2014-08-11" "2014-08-10" "2014-08-08"