我試圖替換data.frame中的字符。我對這個R:用gsub替換字符,如何創建一個函數?
> df <- data.frame(var1 = c("aabbcdefg", "aabbcdefg"))
> df
var1
1 aabbcdefg
2 aabbcdefg
> df$var1 <- gsub("a", "h", df$var1)
> df$var1 <- gsub("b", "i", df$var1)
> df$var1 <- gsub("c", "j", df$var1)
> df$var1 <- gsub("d", "k", df$var1)
> df$var1 <- gsub("e", "l", df$var1)
> df$var1 <- gsub("f", "m", df$var1)
> df
var1
1 hhiijklmg
2 hhiijklmg
>
一個解決方案,但我想避免使用多個調用gsub,這將是更加美好,從而製造功能做一次呢?任何想法繼續?
@jrara我該如何修改代碼纔能有條件地進行替換?在下面的例子中,我只想縮短Mech,Oper和Eng,並且我不想把它們全部替換掉(例如Mech in Mechanical,或者Oper in Operations),下面是例子:從< - (「Mech」,「Oper」,「Eng」)到< - (「Mechanical」,「Operations」,「Engineer」)data.frame(var1 = c(「Mech」,「Mechanical Engineer」 ,「操作」,「操作」))' – vatodorov
應該是標準功能,太棒了! –