替换向量中的文本值

时间:2017-10-11 13:17:49

标签: r

这是我的数据:

dataset <- c("h", "H", "homme", "masculin", "f", "femme", "épouse")

如何替换矢量的文本值,如:

  • “femme” - &gt; “f”
  • “épouse” - &gt;“f”
  • “男士” - &GT; “h”
  • “masculin” - &gt; “h”

我为“女人”做了什么 - &gt; “F”

test_out <- sapply(dataset, switch,
         "f"="femme")
test_out 

预期结果:

  "h"        "h"        "h"    "masculin" "f"        "f"    "f"  

1 个答案:

答案 0 :(得分:2)

使用正则表达式尝试gsub

 dataset = gsub("^((?!h).*)$", "f", gsub("^((h|H|m).*)$", "h", dataset), perl=TRUE)