【发布时间】:2022-12-15 20:22:35
【问题描述】:
我想验证调查响应,包括根据列内和跨列的条件删除带有 NA 的行。下面的示例数据集
col1 <- c("Yes", "Yes", "No", "No", NA)
col2 <- c("Yes", NA, "No", NA, NA)
col3 <- c("No", "Yes", "No", NA, NA)
dataset <- data.frame(col1, col2, col3)
dataset
所需的输出涉及过滤掉 col1 中的所有行,然后仅删除 col1 中为 Yes 且任何其他列中为 NA 的行。所需的输出如下 `
col1 col2 col3
1 Yes Yes No
2 No No No
3 No <NA> <NA>
` 我试过基本的过滤操作,比如
dataset %>% filter(col1 == "Yes" | !is.na(.))
与其他运营商,如 '& , |'但没有运气,我不确定如何在此处应用 across 或 filter_if 以使其工作。我认识到这与 https://stackoverflow.com/questions/43938863/dplyr-filter-with-condition-on-multiple-columns 非常相似,但不同之处足以保证再次问这个问题。
我在这里错过了什么?
【问题讨论】:
标签: r dataframe dplyr filter na