我在Windows 7上运行rStudio v3.1.2。这台笔记本是一台64位机器。
我正在参加由Coursera提供的JHU R编程课程,卡在了问题的第一部分收到的错误上。我有一些错误处理函数不包含在此示例中,所以我真的只想展示我绝对需要的内容。我包括消息的唯一原因是为了证明所有条件必须满足才能继续。
pollutantmean <- function(directory, pollutant, id=1:332) {
setwd("C:\\Users\\WR-eSUB\\specdata")
if(!isValidDirectory(directory)) {
stop("Invalid input given. Please specify valid directory to operate on.")
}
if(!isValidPollutant(pollutant)) {
stop("Invalid input given. Please specify valid pollutant (nitrate/sulfate).")
}
if(!isValidIdRange(id)) {
stop("Invalid input given. Please specify valid id range (1:332).")
}
sortedData = numeric()
for (i in id) {
thisFileName = paste(formatC(i, width = 3, flag = "0"), ".csv", sep="")
thisFileRead = read.csv(directory, thisFileName)
sortedData = c(sortedData, thisFileRead[[pollutant]])
}
mean(sortedData, na.rm = TRUE)
}
请注意,在WR-eSUB内有一个名为specdata的文件夹,而在该文件夹内有包含.csv文件的目录,也称为specdata。我可以更改它,但到目前为止,我一直在使用它,并且没有遇到任何问题。
当我调用pollutantmean("specdata", "nitrate", 1:2)时,我会收到以下错误消息:
Error in file(file, "rt") : cannot open the connection
In addition: Warning message: In file(file, "rt") : cannot open file 'specdata': Permission denied
现在,在我多次尝试完成这一部分作业时,我已经能够使用诸如lapply之类的其他方式提取数据,但因为我一直卡在那里,所以我把所有东西都扔了,想尝试这种方法。
我搜索了网络以寻找这个解决方案。尽管有几个已回答的问题,但没有一个像这个问题一样令人困惑。WR-eSUB是一个管理文件夹,但以前打开其中的文件的尝试并没有产生过这个错误。
C:/Users/WR-eSUB/specdata/specdata/*.csv
吗? - user3710546list.files("C:\\Users\\WR-eSUB\\specdata")
的输出是什么? - user3710546