Tag: grepl

R – 使用grepl和相同的嵌套for循环多条件

我试图用“1”来标记所有的水果,否则只有一个国家提供或“0”。 我有两个数据表: 表格1: 水果 – 每行都有不同的水果,例如苹果,香蕉,桃子等。 国家 – 每行都有2位iso格式的水果主要供应国,例如美国,英国,NO等。 SourceUnique – 这是我想用“1”填充行的列,只有一个国家提供水果,否则为“0”。 表2: 国家/地区 – 每行都有最后一个表格的2位iso格式的供应商国家/地区。 用品 – 每行都有供应商交付的水果清单,例如第一行是“苹果,香蕉”,第二行是“菠萝,桃,梨,苹果”等。 这两个表都从CSV文件导入,那么我的代码如下: Table1$SourceUnique=rep(1,length(Table1$Country)) for(i in 1:length(Table1$Country)){ for(k in 1:length(Table2$Country)){ if(grepl(Table1$Fruit[i], Table2$Supplies[k])==TRUE && identical(Table1$Country[i], Table2$Country[k])==FALSE){ Table1$SourceUnique[i]=0 } } } 我没有得到任何错误,但SourceUnique列没有正确填写。 我得到1和0与一些正确的和其他人没有。 经过大量的search和调整,我已经接受了我不知道和需要帮助,所以任何build议或解决scheme将是太棒了。 谢谢。 编辑更多信息: 有些水果有来自同一个国家的许多供应商,表2 $供应杂乱地与其他词在它烦人。 示例数据: Table1$Country <- c("UK","US","NO") Table1$Fruit <- c("Apple","Banana","Pear") Table2$Country <- c("UK","US","UK") Table2$Supplies <- […]