我在Tidyverse中相当熟练,但总是使用ifelse()
而不是dplyr if_else()
.我想切换此行为,并默认为始终使用dplyr::if_else()
和弃用ifelse()
我的代码.
有什么理由不这样做吗?这可能会让我陷入困境吗?我会饶有你的细节,但最近,if_else()
当我在数据分析中不知不觉地创建了一列字符矩阵时,并没有使用我.如果我切换到总是使用if_else()
我希望将来避免这个问题.
我想删除总和为 0 的所有行,但前 2 列中有因子列。我想出了一个 dplyr 解决方案,创建一个中间 rowsum 列,过滤掉总和为 0 的行,然后删除该 rowsum 列。
我想找到一种方法来使其工作而无需创建不必要的 rowsum 列,两者都使用基本 R 和 dplyr/tidyverse 管道友好方法。肯定有一段简单的单行代码可以实现这一点吗?
library(tidyverse)
df <- data.frame(person = rep(c("Ed", "Sue"), 6),
id = paste0("plot",1:12),
a = c(2, 0, 0, 0, 0, 1, 0, 0, 4, 0, 0, 0),
b = c(0, 0, 6, 4, 0, 8, 1, 0, 0, 0, 1, 1),
c = c(4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 8),
d = c(0, 0, 0, 3, 0, …
Run Code Online (Sandbox Code Playgroud)