问题描述
我有以下问题:
在我的数据框(89列)中,我有4个具有负值的值,如下图所示。
![1]:https://i.stack.imgur.com/ZFF0U.png
所以我想知道如何对数据框的特定列进行突变,以使它们的值变为正值(绝对值)。
非常感谢
解决方法
这里是一个选择:
library(dplyr)
your_data %>%
mutate(across(c("DAYS_BIRTH","DAYS_EMPLOYED","DAYS_REGISTRATION","DAYS_ID_PUBLISH"),abs))
根据要突变的列和要离开的列,也许可以使用更简单的选择助手,例如mutate(across(starts_with("DAYS"),abs))
。
一般解决方案:
library(dplyr)
data %>% mutate_if(function(x) all(x<0),function(x) abs(x))