我需要制作一系列标签为pt-01: pt-48的文件夹。然后,我需要将所有相应的参与者文件移动到新文件夹中。
目前所有文件(每个ppt 10个)都在一个文件夹中,并且在每个文件名的某个地方包含ppt编号。例如XX01_040_xxx6_9其中040为ppt编号。
我首先尝试使用for循环创建一个文件夹名称列表,但我不知道如何保存输出
setwd("P:/data")
for (i in 1:48){
print(paste0("ppt-0", i))
}
**所以我使用了lapply **
x = (1:48)
fun <- function(x){
paste0("ppt-0", x)
}
output <- lapply(x, fun)
output
path <- "data"
dir.create(output)
我打算试着列出。文件,然后使用for循环或lapply/或if语句将文件移动到相应的文件夹中,但我不太确定如何实现这一点。
这不起作用,我不确定还能尝试什么-任何帮助将非常感激。
您可以使用它来创建文件夹
for (i in 1:48){
if(i < 10)
dir.create(paste0("ppt-0", i))
else dir.create(paste0("ppt-", i))
}
然后移动文件
for (f in list.files("path to your files")){
n <- gsub('^_0(\d+)_', '\1', stringr::str_extract(f, '_\d+_'))
to <- paste0("ppt-0", n)
file.copy(from = paste0('path to your files', f),
to = paste0('path to your folder data', to))
}