arrays - Excel:将最近匹配的行号返回为两个值
问题描述
我有两个需要匹配的坐标列表。
一个非常大的列表(434,561 行)结构如下(在 Excel 中将列视为 A、B 和 C):
code (ID) | Latitude | Longitude
----------|------------|-----------
point455 | 4.513523 | 23.754457
point478 | 74.123523 | 83.757459
[...]
另一组具有相同结构的点的第二个列表(4000 行)。
我想将第二个列表中的每个点与第一个列表中最接近的坐标相匹配。差不多是这样的:
(second list)
code (ID) | Latitude | Longitude | Closest point
----------|------------|-------------|--------------
tag165 | 4.513523 | 23.754457 | point488
tag198 | 74.123523 | 83.757459 | point124
[...]
我尝试分别匹配纬度和经度。下面的公式给出了单元格中包含最近长值的值:
=INDEX(ALLStops!B2:ALLStops!$B$434561, MATCH(MIN(ABS(ALLStops!$B$2:ALLStops!$B$434561-B2)), ABS(ALLStops!B2:ALLStops!$B$434561-B2), 0))
两列具有相同的公式,并且被独立处理。然后我用它=MATCH(E2,ALLStops!B2:B434561,0)
来获取行。
但是大约 1/3 的条目具有最接近的坐标在不同行上的值,这显然是无用的。
所以匹配为最接近的两个坐标值需要在同一行,我猜计算必须压缩为一个。
任何人都可以提出一种限制这种情况的方法,或者一种更简洁(并且内存占用更少)的方法吗?
解决方案
推荐阅读
- android - 以编程方式设置 TabLayout 项目标题
- python - 在 python 中读取 NetCDF 文件
- maven - Cucumber+Maven+TestNG-->即使在构建成功后,控制台输出也会显示为 TestRun as 0
- python-3.x - 将“预压缩”列表值转换为整数
- mongodb - Mongo-atlas 连接:ReferenceError:未定义客户端
- python - 按顺序获取 NumPy 数据列的奇异值
- javascript - 在 ListItem 的 onPress 中传递参数(呈现为未定义)
- c# - 如何根据特定的异常类型在 xUnit 中重试测试
- haskell - 笛卡尔积不适用于应用程序
- python-3.x - 如何从字符串创建一组单词?