【问题标题】:Calculate population standard deviation of a column计算列的总体标准差
【发布时间】:2021-05-02 04:26:35
【问题描述】:

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

apply(df,2,sd)

但它显示的是样本标准差,在这种情况下如何找到总体标准差?

【问题讨论】:

    标签: r


    【解决方案1】:

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

    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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-26
      • 1970-01-01
      • 2014-06-16
      • 2015-12-27
      • 2016-04-14
      • 2020-01-28
      • 1970-01-01
      • 2015-11-20
      相关资源
      最近更新 更多