我在基础软件包中使用mean()
并且想要计算未调整的平均值,即使在放置trim = 0
之后也未进行评估。我实现上述代码的代码是: -
pollutantmean <- function(directory,pollutant,id = 1:332){
m = vector("numeric")
for(i in id){
#paste() is used to concatenate r strings.
if(i < 10){
table <- read.csv(paste(directory ,"/","00",i,".csv",sep = ""))
}
else if(i>=10 && i<=99){
table <- read.csv(paste(directory ,"/","0",i,".csv",sep = ""))
}
else{
table <- read.csv(paste(directory ,"/",i,".csv",sep = ""))
}
table <- table[,pollutant]
m <- c(m,mean(table,na.rm = TRUE))
print(m)
}
mean(m)
}
请帮我处理未修剪的意思,我可以轻松编写自己的功能,但我真的更喜欢这个有调整或其他功能。提前谢谢!....
答案 0 :(得分:3)
mean()
函数具有trim
参数,默认值为0.因此使用mean(sample)
将为您提供未修剪的均值。
分析你的功能,你正在阅读几个csv,计算它们的平均值。然后,您将此值存储在矢量中,最后计算这些均值的平均值。
此值不是所有csv的平均值,除非它们都具有相同数量的元素。例如{1,2,3,4,5}的平均值是3,但是如果你把它分成两组:{1,2}和{3,4,5}它们的平均值是1.5和4。 {1.5,4}是2.75(不是3)。