[英]mutate_at() or map_dfr(), changing multiple columns at once
I have a dataframe that Looks like我有一个 dataframe 看起来像
df <- data.frame(id = c('id_1','id_2', 'id_3'),
m_1 = c(1,2,3),
m_2 = c(2,3,5),
m_3 = c(2,6,4))
change = function(x){
if(x == 2){
tmp = 'great'
}else{
tmp ='bad'
}
return(tmp)
}
I want to apply the change function on m_1, m_2, and m_3 without having to repeat the function over and over again.我想在 m_1、m_2 和 m_3 上应用更改 function ,而不必一遍又一遍地重复 function。
Thank you in advance!先感谢您!
Is this what you are looking for?这是你想要的?
df %>%
mutate(across(starts_with("m_"),
~ifelse(. == 2, "great", "bad")))
id m_1 m_2 m_3
1 id_1 bad great great
2 id_2 great bad bad
3 id_3 bad bad bad
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.