计算列的总体标准差

时间:2021-05-02 04:26:35

标签: r

我想知道数据框中每一列的标准偏差。 现在我正在使用公式

apply(df,2,sd)

但它向我展示了样本标准差,在这种情况下如何找到总体标准差?

1 个答案:

答案 0 :(得分:2)

我们可以定义总体标准差的计算:

sd.p=function(x){sd(x)*sqrt((length(x)-1)/length(x))}
# From  https://stackoverflow.com/a/66349386/6851825

然后使用你的公式:

apply(mtcars,2,sd.p)
        mpg         cyl        disp          hp        drat          wt        qsec          vs 
  5.9320296   1.7577951 121.9867814  67.4830708   0.5262581   0.9630477   1.7588006   0.4960784 
         am        gear        carb 
  0.4911323   0.7261844   1.5897622 

从该问题的其他答案来看,基本 R 中似乎没有为此内置函数,但许多包都包含一个具有该效果的函数:https://stackoverflow.com/a/59120744/6851825