我试图让这段代码尽可能快地运行,但目前效率很低。在
我有一个4D的标量数据矩阵。这4个维度分别对应纬度、经度、海拔和时间。数据存储在numpy数组中,其形状为(5,5,30,2)。在
在4个不同的列表中,我保存每个轴的“映射”,存储每个索引对应的值。例如,贴图数组可能看起来像:
mapLatitude = [45.,45.2,45.4,45.6,45.8]
mapLongitude = [-10.8,-10.6,-10.4,-10.2,-10.]
mapAltitude = [0,50,100,150,...,1450]
mapTime = [1345673,1345674]
这意味着在数据矩阵中,位置0,1,3,0处的数据点对应于
纬度=45,经度=10.6,海拔高度=150,时间=1345673。在
现在,我需要生成一个包含数据矩阵中每个点坐标的新数组。在
到目前为止,我写的是:
^{pr2}$这是可行的,但需要相当长的时间,尤其是当数据矩阵的大小增加时(我需要将此用于形状类似(100100150,30))的矩阵。在
如果有帮助的话,我需要生成这个coordinateMatrix来将它提供给scipy.interpolate.NearestNDInterpolator
。在
有什么建议可以加快速度吗?
非常感谢你!在
如果将列表转换为
ndarray
,则可以使用广播,如下所示:对于更一般的输入,类似这样的方法应该有效:
^{pr2}$相关问题 更多 >
编程相关推荐