2
我有一個包含兩組座標(lat1,lon1,lat2,lon2)的Pandas DataFrame。我有一個使用這些座標計算距離的函數。但是數據框中的一些行是無效的。我想僅將我的函數應用於有效行並將函數的結果保存到'dist'列(該列已存在於數據框中)。我想要這樣的SQL:熊貓:使用基於其他列值的函數有條件填充列
UPDATE dataframe
SET dist=calculate_dist(lat1, lon1, lat2, lon2)
WHERE lat1 IS NOT NULL AND lat2 IS NOT NULL AND user_id>100;
我該如何做到這一點?
我試過使用df = df.apply(calculate_dist, axis=1)
,但通過這種方法,我需要處理所有行,不僅符合我的條件的行,而且需要在calculate_dist函數內部有一個忽略無效行的if語句。有沒有更好的辦法?
我知道類似的問題已經出現在StackOverflow上,但我找不到任何利用函數和條件選擇行的問題。
它的工作原理,謝謝。 – JustAC0der