You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何合并Dplyr分组计算中位数与观测数统计的代码?

合并dplyr代码同时计算中位数与观测数

当然可以合并,只需要在同一个summarise()调用里同时添加观测数的统计逻辑即可,最直接的方式是使用n()函数(返回当前分组的行数),代码如下:

result <- iris %>% 
  group_by(Species) %>% 
  summarise(
    medianSL = median(Sepal.Length),
    medianSW = median(Sepal.Width),
    medianPL = median(Petal.Length),
    medianPW = median(Petal.Width),
    n_observations = n()  # 统计每组观测数量
  )

如果你习惯用tally()的逻辑,也可以先通过add_count()添加观测数字段,再进行汇总,但上面的方式更简洁高效:

result <- iris %>% 
  add_count(Species, name = "n_observations") %>% 
  group_by(Species, n_observations) %>% 
  summarise(
    medianSL = median(Sepal.Length),
    medianSW = median(Sepal.Width),
    medianPL = median(Petal.Length),
    medianPW = median(Petal.Width)
  )

两种方式都能一次性生成包含各特征中位数和每组观测数的结果表,第一种方法在分组后直接汇总,性能更优。

内容的提问来源于stack exchange,提问作者Jamie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 06:35:48