我试图使用pandas数据框分析测量值“X”在几周内的平均每日波动,但时间戳/日期等特别麻烦。花费了好几个小时尝试解决这个问题,我的代码变得越来越混乱,我不认为我离解决方案更近了,希望这里有人能指导我朝着正确的方向前进。
我在不同时间和不同日期测量了X,并将每日结果保存到具有以下形式的数据框中:
Timestamp(datetime64) X
0 2015-10-05 00:01:38 1
1 2015-10-05 06:03:39 4
2 2015-10-05 13:42:39 3
3 2015-10-05 22:15:39 2
由于测量时间每天都在变化,我决定使用分箱法来组织数据,然后计算每个箱的平均值和标准差,然后将它们绘制出来。我的想法是创建一个最终的数据框,其中包含各个箱的平均X值以及测量结果的“Observations”列仅用于帮助理解:
Time Bin Observations <X>
0 00:00-05:59 [ 1 , ...] 2.3
1 06:00-11:59 [ 4 , ...] 4.6
2 12:00-17:59 [ 3 , ...] 8.5
3 18:00-23:59 [ 2 , ...] 3.1
然而,我在使用pd.cut
和pd.groupby
进行分箱时遇到了时间、日期、日期时间、时间差等不兼容的困难,基本上我感觉自己像是在盲目尝试,没有任何关于正确解决这个问题的思路。我能想到的唯一解决方案就是逐行迭代整个数据框,但我真的很想避免这样做。