文件错误(文件“rt”):无法打开r中的连接

文件错误(文件“rt”):无法打开r中的连接

问题描述:

我是编程新手。目前在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

按照该错误,似乎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文件夹。 –