使用R和列出要复制的文件名的csv文件将文件从一个文件夹复制到另一个文件夹
我想使用csv文件,其中列出了我想从一个文件夹复制到另一个文件夹的文件名。“发件人”文件夹包含一些我不希望复制的文件,以及我确实希望复制的文件。我有一个csv文件,其中包含要复制的文件名列表。每个文件都包含多个扩展名(.sid、.xml等),我希望复制文件的所有组件。我可以使用诸如使用R和列出要复制的文件名的csv文件将文件从一个文件夹复制到另一个文件夹,r,csv,copy,R,Csv,Copy,我想使用csv文件,其中列出了我想从一个文件夹复制到另一个文件夹的文件名。“发件人”文件夹包含一些我不希望复制的文件,以及我确实希望复制的文件。我有一个csv文件,其中包含要复制的文件名列表。每个文件都包含多个扩展名(.sid、.xml等),我希望复制文件的所有组件。我可以使用诸如stringr之类的库来帮助完成任务 是否有人已经编写了一个灵活的函数来处理此任务 这是我的剧本的开头 > library (stringr) > > copy_from <- "c:/Tem
stringr
之类的库来帮助完成任务
是否有人已经编写了一个灵活的函数来处理此任务
这是我的剧本的开头
> library (stringr)
>
> copy_from <- "c:/Temp/test/copy_from/"
> copy_to <- "c:/Temp/test/copy_to/"
> index <- read.csv ("c:/Temp/test/index.csv",header=T)
> index$filename <- as.character(index$filename) #need to convert field to character for susbstr to work
> index$name <- substr(index$filename,1,nchar(index$filename)-4) #now I have a new column with only the filename and not the extension
> index
filename name
1 voya_20140721.SID voya_20140721
2 voya_20140801.SID voya_20140801
3 voya_20140801_2.SID voya_20140801_2
> listfiles <- list.files (copy_from)
> listfiles
[1] "voya_20140710.SID" "voya_20140710.xml" "voya_20140721.SID" "voya_20140721.SID.aux.xml" "voya_20140721.xml" "voya_20140801.SID"
[7] "voya_20140801.SID.aux.xml" "voya_20140801.xml" "voya_20140801_2.SID" "voya_20140801_2.xml"
>库(stringr)
>
>将_从copy_复制到索引$filename index$name index
文件名
1 voya_20140721.SID voya_20140721
2 voya_20140801.SID voya_20140801
3 voya_20140801_2.SID voya_20140801_2
>列表文件列表文件
[1] “voya_20140710.SID”“voya_20140710.xml”“voya_20140721.SID”“voya_20140721.SID.aux.xml”“voya_20140721.xml”“voya_20140801.SID”
[7] “voya_20140801.SID.aux.xml”“voya_20140801.xml”“voya_20140801_2.SID”“voya_20140801_2.xml”
这是一个数据框,标识了我想要复制的文件
index <- structure(list(filename = c("voya_20140721.SID", "voya_20140801.SID",
"voya_20140801_2.SID"), name = c("voya_20140721", "voya_20140801",
"voya_20140801_2")), .Names = c("filename", "name"), row.names = c(NA,
-3L), class = "data.frame")
索引我不明白。为什么不直接运行Map(file.copy,copy\u from\u vec,copy\u to\u vec)
。必须读入另一个文件才能找到要复制的文件是一种浪费。我想你可能不明白。我只想复制部分文件,而不是全部文件。例如,可能有400个文件,但我只想复制其中10个。