我在几列中有一堆数据,但基本上是:
束#1(A列,B列):
CHR POS
1 126234
3 5555555
3 9999999
9 3700000
束#2(E,F,G栏):
CHR POS INDEX
1 1129410 1
2 4500000 2
3 5555155 3
3 9997999 4
7 3700000 5
我想在束#1中添加一列,这样如果两个束的CHR列相同,并且#2的POS列在#1中的POS的+/- 500范围内,则复制索引束#2。
像这样(A,B,C栏):
CHR POS NEW_COLUMN
1 126234 #N/A
3 5555555 3
3 9999999 #N/A
9 3700000 #N/A
我得到了C
中两列的完全匹配{=INDEX(E:G,match(1,(E:E=A1)*(F:F=B1),0),3)}`
非常感谢将范围条件纳入比赛的一些帮助。
答案 0 :(得分:1)
较新的AGGREGATE¹ function可快速处理多种情况。在C2中,
=IFERROR(INDEX(G$1:G$9, AGGREGATE(15, 6, ROW($1:$9)/((E$1:E$9=A2)*(F$1:F$9<=B2+500)*(F$1:F$9>=B2-500)), 1)), "no match")
根据需要填写。
¹ Excel 2010引入了AGGREGATE function。早期版本不提供。