我试图根据同一个表中的单元格A的值更新表中的单元格B.要过滤我要更新的行,我正在使用grepl将单元格A与列表/表格/矢量或某些其他外部源的字符串列表进行比较。对于单元格A与搜索条件匹配的所有行,我想更新单元格B以表示“xxxx”。我需要为我的表中的所有行执行此操作。基于来自另一个表的搜索字符串的R更新表列
到目前为止,我有这样的东西,其中cat1是某种有字符串搜索的列表。
for (x in 1:length(cat1)){
data %<>% mutate(Cat = ifelse(grepl(cat1[i],ItemName),"xxx",Cat))
}
我愿意接受任何更好的方法来完成这一点。我已经尝试了与数据框的循环,并且我开放给data.table解决方案。
谢谢。
谢谢!这很好。我现在唯一需要做的就是找到一种方法来做到这一点,但对于我已经崩溃的每一只猫都有循环。所以例如cat1,cat2,cat3等......我想这将需要使用某种循环。另外,我需要对整个单词进行grepl匹配。例如,如果我的搜索字词是“狗”,我想匹配“胖狗”,但不是“狗狗”。 –
@ user1991118,我不会更新我的答案,除非你提供一个最小的,独立的可重现的例子。如果你这样做,我可能会看到如何继续。还要注意,你现在问的不是原来的问题。 –
我明白了。我会尽量把可重现的东西放在一起并发布到一个新的问题上。再次感谢。 –