我的数据集如下所示:
+------------------------|-----+
| timestamp| zone|
+------------------------+-----+
| 2019-01-01 00:05:00 | A|
| 2019-01-01 00:05:00 | A|
| 2019-01-01 00:05:00 | B|
| 2019-01-01 01:05:00 | C|
| 2019-01-01 02:05:00 | B|
| 2019-01-01 02:05:00 | B|
+------------------------+-----+
每小时我都需要计算哪个区域的行数最多,最后得到一个如下所示的表:
+-----|-----+-----+
| hour| zone| max |
+-----+-----+-----+
| 0| A| 2|
| 1| C| 1|
| 2| B| 2|
+-----+-----+-----+
我的指令说,我需要使用窗口功能和“分组方式”来找到我的最大计数。
我试过一些方法,但我不确定是否接近。任何帮助都将不胜感激。
2条答案
按热度按时间vm0i2vca1#
你可以用
Windowing functions
以及group by
使用Dataframe。在你的情况下,你可以
rank() over(partition by)
窗口功能。rbl8hiat2#
您可以使用两个后续窗口函数来获得结果: