在Excel或R中匹配通配符数组
我试图将A列与B中的任何值进行匹配,但我无法找出获得匹配结果的正确公式。 如果B具有对应的通配符值,则匹配中的值在Excel或R中匹配通配符数组,excel,Excel,我试图将A列与B中的任何值进行匹配,但我无法找出获得匹配结果的正确公式。 如果B具有对应的通配符值,则匹配中的值 A B Match 1 2 NO 2_1 3 YES 3 13 YES 3_1 14 YES 3_2 YES 9 NO 12 NO 14
A B Match
1 2 NO
2_1 3 YES
3 13 YES
3_1 14 YES
3_2 YES
9 NO
12 NO
14 YES
14_3 YES
16 NO
19 NO
20 NO
我曾尝试向B数组中添加通配符,但效果不理想
C2=MATCH(A2,B2:B5&"*")=#VALUE!
使用R,并包含数据中的
匹配
列
您想要A
的值出现在列B
的任何位置的行吗
> x[x$A %in% x$B,]
A B Match
3 3 13 YES
8 14 NA YES
看起来您可能希望匹配之前的所有内容:
> with(x, x[sub('_.*', '', A) %in% B,])
A B Match
2 2_1 3 YES
3 3 13 YES
4 3_1 14 YES
5 3_2 NA YES
8 14 NA YES
9 14_3 NA YES
目前还不清楚预期的结果应该是什么。是否与您制作的摘录中的匹配?我们应该在可用的中查找吗?@Hugh:我已经更改了混乱的字段标题。“匹配”列是预期结果。我在B中寻找A,其中B可以用通配符进行补充。