Это будет работать для персонажа или факторов.
df$country <- sub("ArabWorld", "Arab World", df$country)
Это эквивалентно:
> df[,1] <- sub("ArabWorld", "Arab World", df[,1] )
> head(df)
country iso2c year NY.GDP.MKTP.CD EN.ATM.CO2E.KD.GD
99 Arab World 1A 1998 575369488074 1.365953
100 Arab World 1A 1999 627550544566 1.355583
101 Arab World 1A 2000 723111925659 1.476619
102 Arab World 1A 2001 703688747656 1.412750
Если вы создаете фрейм данных с желаемыми изменениями, вы можете перейти к ним, чтобы изменить их. Обратите внимание, что я обновил это, чтобы оно показало, как вводить скобки в этом столбце, чтобы они правильно передавались в sub
:
name.cng <- data.frame(orig = c("AntiguaandBarbuda", "AmericanSamoa",
"EastAsia&Pacific\\(developingonly\\)",
"Europe&CentralAsia\\(developingonly\\)",
"UnitedArabEmirates"),
spaced=c("Antigua and Barbuda", "American Samoa",
"East Asia & Pacific (developing only)",
"Europe&CentralAsia (developing only)",
"United Arab Emirates") )
for (i in 1:NROW(name.cng)){
df$country <- sub(name.cng[i,1], name.cng[i,2], df$country) }