我有一个包含三列的日期框,其中一列有一个没有 NA 值的参与者 ID 变量,另外两列(目标变量)有一些分散的变量。我正在尝试使用此处解释的解决方案(删除除 2 列之外所有列均为 NA 的行)来删除两个目标变量都具有 NA 的行,但由于某种原因,我的实现似乎不加区别地删除所有 NA。
以下是未处理的 df 的示例:
| ID | A | 乙 |
|---|---|---|
| 1 | ab | 不适用 |
| 1 | 不适用 | ab |
| 1 | 不适用 | 不适用 |
这是我希望处理后的 df 的样子:
| ID | A | 乙 |
|---|---|---|
| 1 | ab | 不适用 |
| 1 | 不适用 | ab |
这是我用来尝试实现此目的的代码:
na_rows = df %>%
select(-"ID") %>%
is.na() %>%
rowSums() > 0
processeddf <- df %>%
filter(!na_rows)
Run Code Online (Sandbox Code Playgroud)
但是,此代码返回一个 df,它已删除所有包含 NA 的行。因此对于上面的示例,它将返回一个空的 df。我这里哪里出错了?我无法弄清楚我的逻辑错误发生在哪里。