评估R中未修剪的均值

时间:2016-09-28 01:01:00

标签: r

我在基础软件包中使用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)

}

请帮我处理未修剪的意思,我可以轻松编写自己的功能,但我真的更喜欢这个有调整或其他功能。提前谢谢!....

1 个答案:

答案 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)。