创建一个新变量,在R中现有变量的元素之后重命名其元素
我想创建一个新变量,其中的元素以现有变量的元素命名,但是使用str_replace_all,它只适用于第一种情况。。。 多谢各位创建一个新变量,在R中现有变量的元素之后重命名其元素,r,mutate,R,Mutate,我想创建一个新变量,其中的元素以现有变量的元素命名,但是使用str_replace_all,它只适用于第一种情况。。。 多谢各位 df<-data.frame(A=c("HotWater", "ColdWater", "HotRock", "ColdRock", "ColdRock","ColdRock")) df$A<-as.factor(df$A) old<
df<-data.frame(A=c("HotWater", "ColdWater", "HotRock", "ColdRock", "ColdRock","ColdRock"))
df$A<-as.factor(df$A)
old<-c("HotWater", "ColdWater", "HotRock", "ColdRock")
#HotWater= hot fluid, ColdWater=cold fluid , HotRock= hot solid, ColdRock = cold solid
#I need only HF for Hot Fluid, CF for Cold Fluid and so on...
new<-c("HF", "CF", "HS", "CS")
#I try to create a new variable with the correct labels
df$B<-str_replace_all(df$A,old, new)
尝试以下方法
代码:
df$b <- mgsub::mgsub(as.character(df$A),
c("HotWater", "ColdWater", "HotRock", "ColdRock"),
c("HF", "CF", "HS", "CS"))
> df
A B
1 HotWater HF
2 ColdWater CF
3 HotRock HS
4 ColdRock CS
5 ColdRock CS
6 ColdRock CS
它很管用,谢谢!我的荣幸!如果你觉得答案有帮助,你可以投票表决。如果问题得到了回答,您也可以通过接受答案来表明这一点。
> df
A B
1 HotWater HF
2 ColdWater CF
3 HotRock HS
4 ColdRock CS
5 ColdRock CS
6 ColdRock CS