Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在dplyr中应用基于ntile()组的mutate?_R_Dplyr - Fatal编程技术网

如何在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))