【发布时间】:2018-07-06 17:40:06
【问题描述】:
我希望使用自定义汇总函数来汇总 tibble 中的每一列,该函数将根据数据返回不同大小的 tibble。
假设我的汇总函数是这样的:
mysummary <- function(x) {quantile(x)[1:sample(1:5, 1)] %>% as_tibble}
它可以像这样应用于一列:
cars %>% summarise(speed.summary = list(mysummary(speed)))
但我想不出使用summarise_all(或类似的东西)实现此目的的方法。
使用cars 数据,所需的输出将是:
tribble(
~speed.summary, ~dist.summary,
mysummary(cars$speed), mysummary(cars$dist)
)
# A tibble: 1 x 2
speed.summary dist.summary
<list> <list>
1 <tibble [5 x 1]> <tibble [2 x 1]>
当然,实际数据有更多的列...
建议?
【问题讨论】: