我正在尝试在我的df中找到一列的平均值,而没有得到NA错误。但是,即使我声明na.rm = TRUE,我的控制台仍会发出如下警告消息: 1:在mean.default(inte,na.rm = TRUE)中: 参数不是数字或逻辑:返回NA
我尝试了$和[]等不同的列选择方法,但这似乎不是问题。我是一个初学者,但na.rm = TRUE不应删除所有NA值吗?
(就我而言,您会在第8行中发现问题)
pollutantmean <- function(directory,pollutant,id = 1:332){
means <- c()
for(i in id){
x <- paste(getwd(), "/", directory, "/", sprintf("%03d", i), ".csv", sep = "")
freem <- read.csv(x)
inte <- freem$pollutant
means[i] <- mean(inte, na.rm = TRUE)
}
mean(means)
}
我希望代码返回所选列的平均值,而没有任何NA
答案 0 :(得分:0)
发现它涉及一个完全不同的问题:freem $ pollutant子集似乎属于“ closure”类。
会再次问这个问题,但表述更好。