Excel:如何多次查找表格中最接近的数字

时间:2019-06-21 01:01:50

标签: excel floating-point integer matching closest

Excel

需要为每个整数0..99查找表中最接近的浮点数

https://www.excel-easy.com/examples/closest-match.html解释了一种从数组到常数单元格找到CLOSEST数的好方法。

我需要对许多值执行此操作(具体来说,是从浮点列表中找到最接近垂直整数0..99的列表)。

当我们向下移动整数列表时,数组公式不允许更改to-to值(整数),它会将其视为恒定位置。

我尝试使用Tables,指的是整数(有效),但上述网站上的公式需要Array运算(F2,控制移位Enter),这在Tables中是不允许的。更正:您可以输入公式,控制输入一个单元格的数组函数,复制公式,然后插入表格。不要更改搜索单元格的引用!

更新

  • 我仍然可以使用数组操作,但是我必须手动将所需的函数复​​制到每100个目标单元中。没关系。

  • 修正了公式中的错字。有关“完美”的详细信息,请参阅问题结尾。

示例代码:

AI4=some integer
AJ4=MATCH(MIN(ABS(Table[float_column]-AI4)), ABS(Table[float_column]-AI4), 0)

重复AI5 ... AI103中的后续整数

示例数据:

0.1  <= matches 0
0.5
0.95 <= matches 1
1.51 <= matches 2
2.89

请考虑列表中存在target = 5以及4.5、5.5的情况。一个给出-0.5,另一个给出+0.5。搜索ABS(-。5)将给出第一个。除非您的数据是非单调的,否则任何一种都是不错的。

这仍然需要更好的解决方案。

谢谢!

1 个答案:

答案 0 :(得分:0)

我还有另一个问题,这促使人们寻求更好的解决方案。

具体来说,由于我感兴趣的X的Y值在X中的距离可能不同,因此我将在X点之前和之后之间插入X。即搜索小于或等于,也大于或等于的值,然后对所需的X进行插值,然后对Y值进行插值。

我可以更进一步,将N-1插值到N + 1,这将为噪声数据提供更清晰的结果。