如何在dplyr中基于ntile()-groups应用变异?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在dplyr中基于ntile()-groups应用变异?相关的知识,希望对你有一定的参考价值。
我尝试根据相似的questions查找答案
tidyverse
的新手,我有以下问题:如何使用ntile()
估算dplyr
的中位数
# Data
library(survival)
data(lung)
第一
p <- lung %>% mutate(test=ntile(inst,3))
现在就这样
table(p$test)
1 2 3
76 76 75
我想估计中位数时间,即每p$time
为p$test
类似
p %>% mutate(test=ntile(inst,3), test.time=median(time[test %in% 1:3]))
没有提供我想要的。
答案
我们可以使用'test'作为分组变量来计算'time'的median
library(dplyr)
p %>%
group_by(test = ntile(inst, 3)) %>%
mutate(test.time=median(time))
如果需要汇总的输出,则将mutate
替换为summarise
以上是关于如何在dplyr中基于ntile()-groups应用变异?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 R 和 dplyr 中连续的元素执行 group_by
R语言dplyr包排序及序号函数实战(row_numberntilemin_rankdense_rankpercent_rankcume_dist)