我有两个数据帧,一个是固定位置浮标的连续数据(每15秒采集一次),另一个是不同时间间隔在不同地点采集的观测数据。两者在各自的数据帧中都有一致的时间戳。对于每个观察,我需要获取观察的时间戳,并在连续数据帧中找到最近的时间戳,从该行提取信息,并将其添加到观察中。我很难找到一种方法,在我的系列连续数据中找到最接近的时间戳。在
观测数据:
counter depth latdeg latmin latdec londeg lonmin ts
0 100001 21.110 72 18.5412 72.309020 -148 -47.071 2018-03-20 17:21:49+01:00
1 100002 22.140 72 18.5448 72.309080 -148 -47.0785 2018-03-20 17:22:07+01:00
2 100003 45.300 72 18.5396 72.308993 -148 -47.0936 2018-03-20 17:34:38+01:00
3 100004 45.310 72 18.5360 72.308933 -148 -47.0974 2018-03-20 17:36:31+01:00
连续数据:
^{pr2}$例如,我想取obs[0]['ts']
并找到cont['time']
中最近时间的索引,即4167
,然后将lat long和alt追加到观测数据帧中。在
您正在寻找pandas.merge_asof
它允许您在不精确的键上连接两个数据帧。在本例中,您希望将它与
direciton = nearest
一起使用,以便根据最接近的两个时间戳进行匹配。在输出:
^{pr2}$如果不需要,可以删除
time
列,我只留下它来说明合并是如何工作的。在相关问题 更多 >
编程相关推荐