r - 如何过滤 2016 年总统选举数据以包含具有 NA 的条目,同时满足其他条件?
问题描述
所以我使用 dplyr 包来过滤 2016 年美国总统大选数据(in dslabs
),使其满足以下条件:
- 州 == 美国
- 2016-10-31 之后的结束日期
- 成绩高于 B,但包括成绩为 NA 的条目
这是我现在拥有的代码:
library(dplyr)
library(dslabs)
polls <- polls_us_election_2016 %>% filter(state == "U.S." & enddate >= "2016-10-31"&
grade %in% c("A+", "A", "A-", "B+") |
is.na(grade))
但此代码最终包含不满足前 2 个条件的成绩为 NA 的条目。如何确保仅包含满足前 2 个条件的条目?
解决方案
您需要将日期与日期对象而不是字符串进行比较,并将条件grade
分开。
library(dplyr)
library(lubridate)
library(dslabs)
polls_us_election_2016 %>%
filter(state == "U.S." & enddate > ymd('2016-10-31') &
(grade %in% c("A+", "A", "A-", "B+") | is.na(grade)))
或者在基础 R
subset(polls_us_election_2016, state == "U.S." & enddate > as.Date('2016-10-31') &
(grade %in% c("A+", "A", "A-", "B+") | is.na(grade)))
推荐阅读
- c# - 如何在 pendrive 中安装 MySQL 数据库
- linux - 可以从 debian 最小映像中删除任何软件包吗?
- python - 从文件指针读取文件而不使用 readlines
- node.js - 从 GitHub 存储库在 heroku 节点 js 中部署时出现应用程序错误
- python - 轮廓的坐标点
- alert - 我如何排列警报和下订单?
- java - 如何在 ConstraintLayout 中将 ImageView 放在 CardView 之上
- react-native - 我不能在 React Native Linking 中写 #
- javascript - 如何让对象构造函数在返回之前等待承诺解决?
- node.js - 从 mongoDb atlas 数据集合中按 id 获取数据