【问题标题】:How to find mean for a categorical column in R [closed]如何找到R中分类列的平均值[关闭]
【发布时间】:2019-03-08 04:28:44
【问题描述】:

我正在尝试找出 Mercury 的最小值、平均值、中值、最大值、标准差和方差。我不确定如何为专栏查找内容。我一直在尝试使用代码数据(平均值),但它不起作用。我已附上图片。enter image description here

【问题讨论】:

  • 您可以复制dput(head(data)) 的输出并将其添加到您的问题中,而不是发布您的数据图像。然后人们可以直接使用和测试您正在使用的数据。
  • 你需要引用一个列 mean(data$Mercury) 我假设。
  • 谢谢你的工作。你如何在 R 上找到标准差之类的东西?
  • 请按照第一条评论中的要求使用dput 提供数据样本。另外,如果某些事情“不起作用”,请解释发生了什么(您是否收到错误,或者可能是意外结果?)。如果您可以向他人提供足够的信息来帮助您,您更有可能得到有用的答案。

标签: r statistics


【解决方案1】:

您可以尝试使用 _if 语法的 dplyr

library(dplyr)
data %>%
  summarise_if(is.numeric, funs(mean, sd, var, min, max, median))

我认为这会给你想要的。

【讨论】:

    【解决方案2】:

    您可以对数据框中的列使用 dplyr::summarise() 函数:

    library(dplyr)
    
    df <- data.frame(
      School = c("A R Kaufman Public School", "Abraham Erb Public School", "Alpine Public School", "Avenue Road Public School", "Ayr Public School", "Baden Public School"),
      Mercury = c(50, 29, 38, 1, 61, 16),
      Lead = c(10, 8, 15, 16, 0, 3),
      PCB = c(532, 440, 518, 487, 517, 491),
      Arsenic = c(9, 6, 10, 2, 13, 4))
    
    summarise(df, min = min(Mercury),
              max = max(Mercury),
              mean = mean(Mercury),
              median = median(Mercury),
              sd = sd(Mercury),
              var = var(Mercury))
    
    #   min max mean median       sd   var
    # 1   1  61 32.5   33.5 22.02499 485.1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-20
      • 2018-07-24
      • 1970-01-01
      • 2018-12-02
      • 1970-01-01
      • 1970-01-01
      • 2016-07-24
      • 1970-01-01
      相关资源
      最近更新 更多