r - 过滤数据框,但仅在满足特定条件的行中
问题描述
这是我的第一个问题,如果我不清楚,我很抱歉。
我有一个包含 2 个列的数据框:城市和年龄。我想过滤一些年龄范围,但仅限于某些城市。
x <- tibble(city = c("LA","LA","LA","NY","NY","NY"), age = c(10,20,30,15,25,35))
我想保留所有值city == "LA"
,但city == "NY"
只有那些age >20
我可以这样做dplyr::filter
吗?
解决方案
根据您的情况,这应该有效:
library(dplyr)
x %>%
filter(city == "LA" | city == "NY" & age > 20)
输出
city age
<chr> <dbl>
1 LA 10
2 LA 20
3 LA 30
4 NY 25
5 NY 35
推荐阅读
- rest - PowerQuery 缺少对 Windows 身份验证和 REST API POST 正文的支持
- c# - 检查点 c# 统一
- c# - 在 Configure() 之后启动 IHostedService
- javascript - 为什么数组可能返回空?
- sql - 在 Oracle SQL 中将 1 列转换为 2 列
- elasticsearch - 弹性搜索 2.0 GreaterOrEquals NEST 2.0
- java - 带有 java.lang.IllegalStateException 的 Servlet:在导出到 Excel 时提交响应后无法转发 [Apache POI]
- xslt - 在根元素上声明所有命名空间
- linux - 有没有办法在不输入整个命令的情况下打印 CMake 的一个命令的帮助?
- javascript - 为什么此 javascript 一直未选中该复选框?