2015-09-25 57 views
0

複製文件(與現有的文件夾結構)到新位置,我有一個數據幀(DF):使用數據幀

df = structure(list(site = c(989L, 989L, 990L, 990L), filename = structure(1:4, .Label = c("989_1.csv", "989_5.csv", "990_2.csv", "990_9.csv"), class = "factor"), sourceA = structure(1:4, .Label = c("FolderA/989/989_1.csv", "FolderA/989/989_5.csv", "FolderA/990/990_2.csv", "FolderA/990/990_9.csv"), class = "factor"), destination = structure(c(3L, 1L, 4L, 2L), .Label = c("FolderB/989/989_5.csv", "FolderB/990/990_9.csv", "FolderC/989/989_1.csv", "FolderD/990/990_2.csv"), class = "factor")), .Names = c("site", 
"filename", "sourceA", "destination"), class = "data.frame", row.names = c(NA, 
-4L)) 

「FolderA」有一系列含有多個文件的子文件夾。我希望將這些文件的子集複製到其他文件夾(此處顯示爲「目標」)。注意:1)目的地因文件而異,2)主文件夾(FolderB,FolderC和FolderD)存在,但子文件夾不存在(例如FolderC/989 /)。

我相信我的解決方案可能涉及file.copy()函數,但我沒有成功。

file.copy(df$sourceA, df$destination) 

結果

Error in file.exists(from) : invalid 'file' argument 

想法?

編輯:使用列名'source'導致問題 - 改爲'sourceA'。

回答

0

我認爲這是因爲df$sourceA的等級是'factor'copy.file想要'character'