【发布时间】:2015-12-31 06:16:28
【问题描述】:
我基本上有一组大型 (GB) 数据集,其中包含我需要对其进行最近插值的点。本质上,它是一个标量/矢量场,是时间的函数。我知道scipy.interpolate 和它的所有优点,我一直在使用它。但是,我意识到数据的空间结构在时间上是恒定的(欧拉),所以一旦我确定了哪些索引对应于这个或那个点进行插值,比如第一个时间步,我就可以获得这些索引,并且相同的索引应该能够为其他时间创建相同形状的插值数据。本质上,它省去了一次又一次地重新插值数据的步骤。
我愿意自己做,但我想检查是否已经存在一种方法可以做到这一点,可能不在 scipy 中而是在其他地方。 scipy.interpolate 没有任何现成的东西看起来可以做到这一点。如果没有答案,我会发布我的解决方案。
最后一点,网格是欧拉的,但不是规则的,并且可能有重复,所以需要最近的插值。我可以(并且已经)对空间点进行了词汇排序,这将有助于快速查找。
【问题讨论】:
-
scipy.interpolate.NearestNDInterpolator建立在scipy.spatial.cKDTree之上,可以返回最近邻索引和距离 -
太棒了!为什么不让它成为答案并获得积分?
标签: python numpy scipy interpolation nearest-neighbor