[英]R: Cannot Open File : No such file or directory
我有如下腳本:
setwd ("I:/prep/Coord/RData/test")
#load .csv files
a.files <- grep("^Whirr", dir(), value=TRUE) #pattern matching
b.files <- paste0("Files_", a.files)
for(i in length(a.files)){
a <- read.table(a.files[i], header=T, sep=",", row.names=1) #read files start with Whirr_
b <- read.table(b.files[i], header=T, sep=",", row.names=1) #read files start with Files_
a
b
cr <- as.matrix(a) %*% as.matrix(t(a)
cr
diag(cr)<-0
cr
#write to file
write.csv(cr, paste0("CR_", a.files[i], ".csv"))
}
基本上,我想做的是比較文件名末尾具有相似文件名的兩個文件,然后進行計算,然后將結果寫入文件。
當我嘗試打印a.files和b.files時,輸出對我來說似乎還可以。 輸出如下:
> a.files <- grep("^Whirr", dir(), value=TRUE) #pattern matching
> b.files <- paste0("Files_", a.files, sep="")
Error: could not find function "paste0"
> a.files
[1] "Whirr_127.csv" "Whirr_128.csv"
> b.files
[1] "Files_ Whirr_127.csv" "Files_ Whirr_128.csv"
>
我嘗試使用多個文件來填充腳本,但是出現如下錯誤消息:
Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") : cannot open file 'Files_ Whirr_128.csv': No such file or directory
因此,我嘗試使用file.choose,但它對我也不起作用。
感謝專家的幫助
更改行:
b.files <- paste0("Files_", a.files)
至:
b.files <- paste("Files_", a.files, sep="")
您正在使用的R版本沒有paste0
(我在先前的答案中看到了給您的代碼)。 這意味着您保留的是b.files
的早期版本,也許是使用paste
構造的。
關於這一點的重要一課是,每當您收到有關行的錯誤消息,例如Error: could not find function "paste0"
,這意味着該行沒有發生! 您必須先糾正該錯誤,然后再粘貼代碼,或在執行操作時告訴我們有關錯誤的信息-否則,我們假定b.files <- paste0("Files_", a.files)
行有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.