为什么 summarize 函数不会出错?

Why does summarize function don't get an error?

我们都知道我们可以计算对向量和 returns R 基中的单个值进行运算的任何摘要。 我想问的是,为什么当我尝试使用 returns 超过一个值函数的分位数时,为什么我没有收到错误?

heights %>%
    filter(sex == "Male") %>%
    summarize(range = quantile(height, c(0, 0.5, 1)))

结果不是错误:

     range
1 50.00000
2 69.00000
3 82.67717

只是发表我的评论和@27ϕ9 的回答。

dplyr 版本 1.0.0 开始,summarise 允许 return 包含多个值的输出。

示例:

mtcars %>%
  group_by(cyl) %>%
  summarise(qs = quantile(disp, c(0.25, 0.75)), prob = c(0.25, 0.75))

# A tibble: 6 x 3
# Groups:   cyl [3]
#     cyl    qs  prob
#   <dbl> <dbl> <dbl>
# 1     4  78.8  0.25
# 2     4 121.   0.75
# 3     6 160    0.25
# 4     6 196.   0.75
# 5     8 302.   0.25
# 6     8 390    0.75

有关更多示例,请参阅 documentation