我有100名患者的数据,每位患者的值为7天(1到7)。如何仅在第1天根据另一个变量选择患者?
df <- data.frame(id = c(1, 1, 1, 2, 2, 2),
day = c(1, 2, 3, 1, 2, 3),
RRT = c(0, 1, 0, 1, 0, 0))
我希望仅选择RRT=0
day = 1
{id}}的ID。
答案 0 :(得分:0)
使用dplyr
时:
library(dplyr)
df %>%
group_by(id) %>%
filter(day == 1 & RRT == 0) %>%
select(id)
或基础R:
df[df$day == 1 & df$RRT ==0,"id"]
答案 1 :(得分:0)
您可以使用基础R中的子集函数:
subset(df,RRT==0&day==1)
如果您只需要id
列,则可以选择
with(df,id[RRT==0&day==1])