我在豬身上有一個袋子,按鍵分組,其值爲經度和緯度。我想計算每個鍵的任意兩個(經度,長度)對之間的最大距離;如果少於兩人隨後,輸出應爲0。PIG:計算緯度和經度對之間的最大距離
例如,如果我的包是
{(1): (1.1, 1.1),
(1): (2.1, 2.1),
(1): (3.1, 3.1),
(2): (1.1, 1.1)
}
我的答案是
{(1): 314 (km)
(2): 0
}
來計算兩者之間的距離公式(拉特,長)對是:
(((lat1 - lat2) * pi() * 3959/180)^2 + ((long1 - long2) * 2 * pi() * 3959 * cos(((lat2 + lat1)/2) * .0174533)/360)^2)^(1/2)
是否有一種簡單的方法來創建一個python udf來做到這一點?謝謝您的幫助。