【发布时间】:2020-01-28 15:14:11
【问题描述】:
使用如下数据框
Time Lat Long
19:24:52.135 35.61067 139.630228
19:24:52.183 NaN NaN
19:24:52.281 NaN NaN
19:24:52.378 NaN NaN
19:24:52.466 35.610692 139.630428
需要为 Lat 和 Long 字段填写 NaN 值,以便 Lat / Long 具有 NaN 值的每一行的值如下:
- 它们落在下一个(比如 x2,y2)和 之间的直线上
- 之前的非 NaN 纬度/经度(比如 x1,y1)点,它们之间的间距相等。
在上述情况下,由于 Lat/Long 有 3 行 NaN,因此它们需要在非 NaN 行之间取 3 个等距点
有没有办法用 pandas 实现这一点,还是应该在外面完成?
更新:
按照 cmets 中的建议尝试了 df.interpolate() - 有效!
【问题讨论】:
-
在这种情况下做一个简单的
df.interpolate()工作..? -
或
df.ffill()?阅读更多here -
我相信@Chris 的想法应该可行,但请记住,您可能想要处理 180 和 90 坐标周围的环绕 :)
标签: python pandas interpolation latitude-longitude