【发布时间】:2018-11-02 04:30:17
【问题描述】:
我有一个包含参与者分数的宽格式数据框,每一列代表一个问卷项目,每一行代表一个参与者的回答。
我的数据如下所示:
id <- c("001", "002", "003", "004", "005")
q1 <- c(1, 2, "", 3, 5)
q2 <- c("", 2, 3, 1, "")
q3 <- c(1, 3, 2, 5, 2)
q4 <- c(1, 2, 3, "", 4)
q5 <- c(1, 2, 3, 4, 3)
df <- data.frame(id, q1, q2, q3, q4, q5)
df[, 2:6] <- apply(df[, 2:6], 2, as.numeric)
我想在参与者离开特定列时保留他们的数据行,比如 q4,空白。同时,只要 q4 以外的任何项目留空,我想排除一行。
我想到的最终结果就像下面的屏幕截图。参与者 001 和 005 被删除,因为他们缺少 q2 分数。由于缺少 q1 分数,参与者 003 被删除。即使参与者 004 缺少 q4 分数,我仍然希望将参与者 004 保留在数据框中。
如果可能,有人可以为我提供一个可以在 dplyr 管道中使用的答案吗?谢谢,非常感谢!
【问题讨论】: