我正在尝试从csv文件中计算均值。我的函数也需要能够计算多个文件中同一列的平均值。到目前为止我已经:
pollutantmean <- function(directory, pollutant, id = 1:332) {
basedir <- c("C:/Users/admin/Downloads/rprog_data_specdata/")
addition <- c(directory)
fulldir <- paste(basedir, addition, sep="")
setwd(fulldir)
pollutants <- pollutant
tempmean <- c()
removeNA = TRUE
for (i in id) {
filename <- read.csv(sprintf("%03d.csv", i))
if (pollutants == "sulfate") {
column_values <- filename$sulfate ##rawstuff[i][ , pollutants]
}
else if (pollutants == "nitrate") {
column_values <- filename$nitrate
}
else {
return("corresponding table name not found")
break
}
tempmean[i] <- mean(column_values, na.rm = removeNA)
}
mean(tempmean[i])
}
如果我尝试运行pollutantmean("specdata", "sulfate", 11:19)
,我只得到第19个文件的平均值,而不是所有文件(11,12 ... 19)。
我认为我需要在tempmean[i] <- mean(col...)
声明中做些什么。