如何在dplyr中应用基于ntile()组的mutate?
我试着根据相似的理论找到答案 作为如何在dplyr中应用基于ntile()组的mutate?,r,dplyr,R,Dplyr,我试着根据相似的理论找到答案 作为tidyverse的新手,我有以下问题:如何使用dplyr # Data library(survival) data(lung) 首先 我想根据p$test 差不多 p %>% mutate(test=ntile(inst,3), test.time=median(time[test %in% 1:3])) 这并没有提供我想要的 我们可以使用“test”作为分组变量来计算“time”的中值 library(dplyr) lung %>%
tidyverse
的新手,我有以下问题:如何使用dplyr
# Data
library(survival)
data(lung)
首先
我想根据p$test
差不多
p %>% mutate(test=ntile(inst,3), test.time=median(time[test %in% 1:3]))
这并没有提供我想要的 我们可以使用“test”作为分组变量来计算“time”的
中值
library(dplyr)
lung %>%
group_by(test = ntile(inst, 3)) %>%
mutate(test.time=median(time))
如果需要汇总输出,则将mutate
替换为summary
您已经有了只需计算的组。谢谢@akrun,完成了。你能简单地解释一下我是如何知道最后一行中写的median(time)
指的是第二行中创建的“test”吗?我的意思是,为什么它不根据任何其他变量来估计中位数(时间)?@cmirian它只是根据group\u by
中创建的test
变量进行分组,这里的“time”只使用每个“test”组的时间行
p %>% mutate(test=ntile(inst,3), test.time=median(time[test %in% 1:3]))
library(dplyr)
lung %>%
group_by(test = ntile(inst, 3)) %>%
mutate(test.time=median(time))