[英]Check and replace column values in R dataframe
我有多个文件需要使用R读取。我循环遍历文件,获取数据帧,然后尝试更改特定列的值。 R数据帧的示例如下:
DF_A:
ID ZN
1 0
2 1
3 1
4 0
DF_B:
ID ZN
1 2
2 1
3 1
4 2
如上所示,某些数据帧的列“ ZN”可能具有0和1,而其他数据帧则具有1和2。 我想要的是-当我遍历文件时,我只想对ZN列具有1和2的数据帧进行更改,如下所示:1到0和2到1。将ZN值为0和1的数据帧进行更改放任不管。
我的尝试没有用:
if(dataframe$ZN > 1){
dataframe$ZN<-recode(dataframe$ZN,"1=0;2=1")
}
else{
dataframe$ZN
}
有什么解决办法吗?
如果只有两个值,即0和1,则
df_A$ZN <- (df_A$ZN==0) + 1
df_A$ZN
#[1] 2 1 1 2
或对多个值使用case_when
library(dplyr)
df_A %>%
mutate(ZN = case_when(ZN==0 ~2, TRUE ~ 1))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.