如何用Excel 2016公式实现两个数据区域的单元格映射?
解决方案
数据区域预设(可按需调整)
先给各数据指定Excel单元格区域,方便公式编写:
- Range1:
A1:C3(对应原始标准化残差数据) - Range2:
E1:G3(对应原始配对数据) - BS1:
A5:D8(已生成的自助抽样样本) - BS2:目标输出区域,示例用
F5:I8
核心公式
在BS2的首个单元格(如F5)输入以下公式,拖动填充至整个BS2区域即可生成对应样本:
=INDEX($E$1:$G$3,ROUNDUP(MATCH(A5,$A$1:$C$3,0)/3,0),MOD(MATCH(A5,$A$1:$C$3,0)-1,3)+1)
公式说明
MATCH(A5,$A$1:$C$3,0):定位BS1当前值在Range1中的绝对位置序号(比如0.6在Range1中排第2位,返回2)。ROUNDUP(序号/3,0):计算该值在Range1中的行号(2/3向上取整为1,对应第1行)。MOD(序号-1,3)+1:计算该值在Range1中的列号(MOD(2-1,3)+1=2,对应第2列)。INDEX($E$1:$G$3,行号,列号):提取Range2中对应位置的值。
验证示例
以BS1(1,1)=0.6为例:
- 经公式计算,对应Range1的(1,2)位置,最终返回Range2(1,2)=1.7,符合要求。
注意事项
- 必须保证Range1内无重复值,否则
MATCH会返回首个匹配位置,符合自助抽样逻辑。 - 公式中的区域引用需用绝对引用(带$),防止拖动填充时区域偏移。
- 若Range1的列数变化,需将公式中的
3替换为实际列数。
内容的提问来源于stack exchange,提问作者user3752138
相关产品推荐
相关产品推荐

