2017-07-12 52 views
1

选择从数据帧的子集,我想通过R.R:使用多个条件

这是原始数据帧问一个数据操作的问题:

group<-c(rep("a",3), rep("b",4), rep("c",3)) 
interval<-c(c("1st", "2nd", "3rd"),c("1st", "2nd", "3rd","4th"),c("1st", "2nd", "3rd")) 
age<-c(c(10, 20, 23),c(12, 22, 24,30),c(17, 24, 25)) 

data1<-data.frame(group, interval, age) 

enter image description here

我会如果每组的“第一”间隔的年龄小于15,则设置R代码以选择每组的“第二”间隔的行。

因此,这个结果I想有:

enter image description here

我已经尝试使用subset()功能,但它不工作:

subset(data1, group %in% (if (data1$interval=="1st" && data1$age<15))) 

谁能帮助我吗?

谢谢!

我感谢任何答复!

回答

2

不使用的子集,你可以这样做:

data1[ group %in% data1[data1$interval=="1st" & data1$age<15, "group"] & 
     data1$interval=="2nd",] 
+0

哇!这正是我想要的。非常感谢!我感谢你的回答!真棒! – Joanna