我正在使用 interpolate_to_grid 对俄克拉荷马州 Mesonet 数据运行 Barnes 客观分析程序,该程序从 interpolate_to_points 读取计算的站间距输出。这是使用 ave_spacing = cdist(points, points).mean() 计算的,它似乎计算了每个单独数据点与所有数据点之间的平均距离。结果,当相邻站点之间的实际平均间距为 30-40 公里时,我得到的平均站间距约为 228 公里。我希望能够在客观分析过程中更改此值,而无需筛选所有不同的依赖项。
spacing = cdist(list(zip(xloc, yloc)), list(zip(xloc, yloc)))
print(spacing)
Output:
[[ 0. 245145.42398369 281067.71959647 ... 181889.14491027
307129.27783772 193503.08897866]
[245145.42398369 0. 242581.9939922 ... 426945.42853957
204288.62028541 345728.95107532]
[281067.71959647 242581.9939922 0. ... 410049.17526377
70655.02912353 212376.09473731]
...
[181889.14491027 426945.42853957 410049.17526377 ... 0.
455951.64830299 226710.02224577]
[307129.27783772 204288.62028541 70655.02912353 ... 455951.64830299
0. 275129.18406574]
[193503.08897866 345728.95107532 212376.09473731 ... 226710.02224577
275129.18406574 0. ]]
avg_spacing = np.mean(cdist(list(zip(xloc, yloc)), list(zip(xloc, yloc))))
print(avg_spacing)
Output:
227725.7196359123