首页 > 解决方案 > r中的子集数据一次基于两个不同的条件

问题描述

我正在尝试从以下数据框中选择居住者年龄组在 15 岁以下和 30 至 40 岁之间的所有家庭。基本上我正在寻找有孩子的家庭和他们的父母

household Members_age
   100          75
   100          74
   100          30
   101          20
   101          50
   101          60
   102          35
   102          40
   102           5

这里只有家庭 102 满足条件。

我在这里得到了基于 r 条件的子集数据的提示, 但无法添加第二个条件来过滤,即年龄在 30 到 40 之间

样本数据集:

library(dplyr)
library(sqldf)
data <- data.frame(household = c(100,100,100,101,101,101,102,102,102),
           Members_age = c(75,74,30,20,50,60,35,40,5))

标签: rdataframe

解决方案


我们可能会使用

subset(data, Members_age < 15 | (Members_age >30 & Members_age < 40))

-输出

 household Members_age
7       102          35
9       102           5

根据OP的帖子Here only Household 102 satisfy the condition.


推荐阅读