2016-09-06 113 views
0

我是編程新手。目前在Coursera中進行R編程,並在執行賦值命名爲「pollutantmean」時出現此錯誤。我在論壇和計算器中搜索,但無法修復它。讚賞你的幫助。謝謝。文件錯誤(文件「rt」):無法打開r中的連接

我得到這個錯誤:

Error in file(file, "rt") : cannot open the connection In addition: Warning message: 
In file(file, "rt") : cannot open file 'NA': No such file or directory 

注:我有一個文件夾「specdata」,這是工作directory.This「specdata」擁有所有的332 CSV files.I要計算意味着之一。命名這些文件中「污染物」和「目錄」污染物列是這些文件的位置「ID」是一個整數向量提監視器number.so,這裏是我的代碼:

pollutantmean <- function(directory, pollutant, id = 1:332) {    

    files_full <- list.files(directory, full.names = TRUE) 

    dat <- data.frame() 

    for (i in id) { 
    dat <- rbind(dat, read.csv(files_full[i])) 
    } 

    mean(dat[, pollutant], na.rm = TRUE) 
    } 

    pollutantmean("specdata","sulfate",id = 1:10) 
+0

嗨Aruna,它看起來像你的list.files已經創建了一個空字符串。如果目錄中有其他文件,您可能需要在list.files調用中添加'pattern =「csv」'。 – biomiha

回答

0

按照該錯誤,似乎list.files正在返回文件名稱的空向量。

list.files默認情況下僅返回目錄內的文件nam。所以在這種情況下,應該首先設置工作目錄,以便read.csv將讀取工作目錄中的文件。

setwd("<directory name>") 

現在你的功能應該可以正常工作。

+0

嗨Nishu,我從list.files.But獲得了332個csv文件名和保存的函數「pollutantmean.R」,當我嘗試使用此代碼調用函數,污染物平均值(「specdata」,「sulfate」,id = 1),上面提到的兩個錯誤發生。 –

+0

我用這個鏈接作爲這個任務的指導:http://xmuxiaomo.github.io/2015/06/10/R-Programming-Assignment-1/ –

+0

耶阿魯納,這很明顯,你會得到上述錯誤,因爲read.csv函數試圖從工作目錄讀取文件,那不是那個有332個csv文件的文件。您需要將工作目錄設置爲csv文件夾。 –

相關問題