如何使用dplyr替换R中的多个字符?

时间:2017-07-14 12:02:40

标签: r dplyr

我写了一个函数,如下所示:

special_char <- function(data_in) {
  data_in=gsub("à","a",data_in)
  data_in=gsub("â","a",data_in)
  data_in=gsub("é","e",data_in)
  data_in=gsub("î","i",data_in)
  data_in=gsub("ä","ae",data_in)
  data_in=gsub("ö","oe",data_in)
  data_in=gsub("ü","ue",data_in)
  data_in=gsub("imp.","impessa",data_in)
  data_in=gsub("ch.","chemin",data_in)
  data_in=gsub("av.","avenue",data_in)
  data_in=gsub("str.","strasse",data_in)

  return(data_in)
}

然后,我尝试使用。

将其应用于我的数据集
some_data %>% mutate_all(funs(special_char(.)))

然而,输出是一团糟。有人在我的方法中发现了一个明显的错误吗?

假设我有以下输入:

data_test <- data.frame(col1 = c("Céline", "Désiré", "Björn"))

我希望得到以下输出:

c("Celine", "Desire", "Bjoern")

1 个答案:

答案 0 :(得分:1)

这对我有用:

some_data  %>% mutate_all(funs(special_char))

我希望这也能为您解决问题。如果没有,您的数据是什么样的?

弗洛里安