我試圖根據同一個表中的單元格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,我不會更新我的答案,除非你提供一個最小的,獨立的可重現的例子。如果你這樣做,我可能會看到如何繼續。還要注意,你現在問的不是原來的問題。 –
我明白了。我會盡量把可重現的東西放在一起併發布到一個新的問題上。再次感謝。 –