计算方位角测量中的位置差异

问题描述

我正在处理熊猫数据框中的方位角和高程数据。在此参考框架中,测量值指定为-180至180方位角和0至90仰角。我的数据点徘徊在180度标记附近,因此有时也会记录-180,因为在该参考系中它们彼此相邻。

这是我的数据框

Az      El
-179.90 2.43    
179.85  2.30
179.95  2.33
-179.99 2.40    
179.98  2.63    
-179.92 2.67

我正在尝试在az列中找到任何值之间的最大距离。如果我寻找最小值和最大值,并找到差异,即使真正的最大差异应为.25,我也会得到359.97

有人知道一种可行的算法吗?

这是我当前的代码

def findMaxdistanceInColumn(dataframe,dimension):
    array = dataframe[dimension].to_numpy().astype(np.float)
    min = np.min(array)
    max = np.max(array)
    difference = max-min
    return difference

解决方法

您似乎已经推翻了计算:您需要在180分割的每一侧都使用最低绝对值:取正值的最小值179.85,取负值的最大值, -179.90。现在算一下:

neg_dist = neg_max + 180
pos_dist = 180 - pos_min
final = neg_dist + pos_dist

你能从那里结束吗?