【问题标题】:Find median for each category of a variable in R查找 R 中每个变量类别的中位数
【发布时间】:2020-08-21 18:49:42
【问题描述】:

我正在学习 R,但我遇到了如何找到中位数和绘制坐标的问题,具体取决于变量每个类别的中位数。假设我有一个如下的数据框:

dat <- data.frame(
  time = factor(c("Breakfast","Breakfast","Breakfast","Lunch","Lunch","Lunch","Dinner","Dinner","Dinner"), levels=c("Breakfast","Lunch","Dinner")),
  total_bill_x = c(12.75,14.89,20.5,17.23,30.3,27.8,20.7,32.3,25.4), total_bill_y= c(20.75,15.29,18.52,19.23,27.3,23.6,19.75,27.3,21.48)
)

我想在坐标 (xy) 上绘制对应于早餐、午餐、晚餐的点,其中 x 是每个类别的 total_bill_x 的中位数,y 是每个类别的 total_bill_y 的中位数。例如,对于早餐的坐标,我想要 x=median(12.75,14.89,20.5) 和 y=median(20.75,15.29,18.52)。我们对午餐和晚餐做同样的事情,然后在坐标 xy 上绘制它们。

对此的任何帮助将不胜感激。

【问题讨论】:

    标签: r ggplot2 median


    【解决方案1】:
    
    library (dplyr)
    library(ggplot2)
    
    dat %>% 
    group_by(time) %>% # group your data 
    summarise(
    x = median(total_bill_x),
    y = median(total_bill_y) # compute median
    )%>%
    ggplot(.,aes(x,y, col = time)) + #plot x,y
    geom_point() 
    
    

    【讨论】:

      猜你喜欢
      • 2021-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-01
      • 2022-11-22
      • 2015-06-20
      • 1970-01-01
      • 2023-03-14
      相关资源
      最近更新 更多