我有一个包含日期和 0 或 1 的两列的 csv 文件,如下所示:
17/08/2012 07:47:16 0
17/08/2012 07:54:31 1
17/08/2012 08:02:31 0
17/08/2012 09:22:33 0
17/08/2012 09:58:05 0
17/08/2012 12:26:59 1
17/08/2012 20:56:00 0
18/08/2012 10:04:06 0
18/08/2012 10:42:52 0
20/08/2012 07:22:02 0
20/08/2012 07:54:28 0
20/08/2012 08:01:58 0
20/08/2012 08:16:31 1
20/08/2012 08:26:38 0
20/08/2012 08:55:19 1
20/08/2012 09:00:09 0
20/08/2012 09:26:11 0
20/08/2012 09:50:10 0
20/08/2012 10:33:37 0
20/08/2012 10:39:13 0
20/08/2012 10:39:35 1
20/08/2012 11:15:07 1
20/08/2012 11:19:15 0
20/08/2012 11:21:01 0
我将此文件加载到 DataFrame 中raw_data
,然后将索引更改为 Timestamp :
ts_data=raw_data.set_index(pd.to_datetime(raw_data.when_created,dayfirst=True))
然后我尝试使用以下方法对数据进行下采样:
daily_conversions=ts_data.resample('D',how='sum')
它适用于所有日子(有超过 7 个月的日期,这里我只包括一个子集),除了我得到这个输出的一天:
2012-08-20 NaN
从数据中可以看出,这没有意义。有趣的是,如果我使用像“h”这样的更高频率进行下采样,我会在特定的日子得到正确的结果。我得到不存在的小时的空值 0 存在但只有 0 的小时和存在但 ==1 的小时的正确总和。请问有什么想法吗?