根据位置突变特定的列

时间:2020-09-18 08:59:45

标签: tidyverse mutate across

我试图将数据帧的特定列中的所有负值都转换为0。例如,我将如何在mtcars数据的3:5列和8列中将负值转换为零?

mtcars <- mtcars%>%
mutate(across(c(3:5,8), funs(replace(., .<0, 0)))

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

可以这样实现:

library(dplyr)

mtcars <- mtcars %>%
  mutate(across(c(3:5,8), ~ if_else(. < 0, 0, .)))