Python Pandas向下采样第一个返回NaN

2024-06-01 00:12:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用pandas重新采样船只跟踪数据,从几秒到几分钟,使用how='first'。数据帧称为hg1s,唯一的ID称为MMSI。日期时间索引是TX_DTTM。以下是数据示例:

            TX_DTTM       MMSI        LAT        LON         NS
2013-10-01 00:00:02  367542760  29.660550 -94.974195         15   
2013-10-01 00:00:04  367542760  29.660550 -94.974195         15   
2013-10-01 00:00:07  367451120  29.614161 -94.954459          0   
2013-10-01 00:00:15  367542760  29.660210 -94.974069         15   
2013-10-01 00:00:13  367542760  29.660210 -94.974069         15   

要重新采样的代码:

^{pr2}$

以及输出的数据示例:

 hg1s1min[20000:20004]
             MMSI             TX_DTTM                  NS      LAT  LON
        367448060 2013-10-21 00:42:00                 NaN      NaN  NaN        
                  2013-10-21 00:43:00                 NaN      NaN  NaN        
                  2013-10-21 00:44:00                 NaN      NaN  NaN      
                  2013-10-21 00:45:00                 NaN      NaN  NaN   

假设每分钟内有多个数据点是安全的,所以我不明白为什么它没有获取该方法的第一个记录。我查看了这个链接:Pandas Downsampling Issue,因为它看起来与我的问题类似。我试着传递label='left'和label='right',但都没用。在

如何在每分钟内为每一条彩信返回第一条记录?在


Tags: 数据示例pandas记录nanlabelhowfirst
1条回答
网友
1楼 · 发布于 2024-06-01 00:12:14

事实证明,问题不在于方法,而在于我对数据的假设。大数据集是一个月,即44640分钟。虽然数据集中的每个记录都有相关的值,但在时间上并没有100%的重叠。在这种情况下,2013-10-17 23:24:31和2013-10-29 20:57:32出现MMSI=367448060。在这两个数据点之间,没有要采样的数据,结果是一个NaN,这是正确的。在

相关问题 更多 >