我尝试使用多个正则表达式创建一些简单易用的内容集群。
想象一下字符串列表:c(" a"," b"," ac") 我需要定义的组是"所有:a' s"和"所有:b' s"。所以价值观" a"和" ac"是" A"和" b"是" B"。
myDF$contentGroup <- sub(".*a.*", "A", myDF$stringList)
然而,这将导致我的数据框中的列&#34; contentGroup&#34;其中包含&#34; stringList&#34;的值如果没有匹配发生。因此,如果我使用&#34; B&#34;执行相同的代码行。它会覆盖&#34; A&#34; s。
myDF$contentGroup <- sub(".*b.*", "B", myDF$stringList)
我只是想弄清楚如何在一行代码中进行简单的聚类。尽可能简单。
答案 0 :(得分:1)
您可以使用grep
来匹配'a'和'b',并替换如下,
x[grep('a', x, fixed = TRUE)] <- 'A'
x[grep('b', x, fixed = TRUE)] <- 'B'
x
#[1] "A" "B" "A"