我有一个如下的pandas数据框。
我想要的是这种形式的字典
字典值表示
有没有更简便的方法来解决这个问题?
date hour level
0 2015-10-27 0 2.5
1 2015-10-27 1 2.5
2 2015-10-27 2 2.5
3 2015-10-27 3 2.5
4 2015-10-28 0 0.0
5 2015-10-28 1 0.0
6 2015-10-28 2 0.0
7 2015-10-28 3 0.0
8 2015-10-28 4 0.0
...
14 2015-10-29 0 3.23
15 2015-10-29 1 3.23
...
hour
将始终从0开始递增1;它可能达到23,也可能不到。每天逐一增加一个日期项,但日期条目的数量可能因日期而异,例如-2015-10-27
有4个条目,而2015-10-28
则增加到第13行。对于该日期,level
条目将始终具有相同的值,但该值可能不会出现在另一个日期中。我想要的是这种形式的字典
{'2015-10-27': '3', ..., '2015-10-29': '4', ...}
字典值表示
level
所在的范围,即如果level
是2.5,则落在[2, 3)。我的想法是选择每个“块”的第一行并创建一个新的数据框,然后遍历该数据框并应用10个if语句(level的最大值为9.xx),或者可能使用向上取整函数。但我也不知道怎么做,而且似乎非常笨拙。有没有更简便的方法来解决这个问题?
DataFrame.groupby
! - shx2