首页 > 解决方案 > 如何通过对值进行聚类来参考其他列,从给定的数据框中按 1 小时的频率对时间列进行排序?

问题描述

0        2019-04-01 09:31:39      1
1        2019-04-01 09:47:33      1
2        2019-04-01 09:48:17      1
3        2019-04-01 09:57:52      1
4        2019-04-01 10:03:59      1
5        2019-04-01 10:07:10      1
6        2019-04-01 10:28:40      1
7        2019-04-01 10:43:18      1
8        2019-04-01 10:48:52      1
9        2019-04-01 10:51:56      1
10       2019-04-01 10:55:59      1
11       2019-04-01 10:59:20      1
12       2019-04-01 11:12:05      1
13       2019-04-01 12:23:09      1
14       2019-04-01 12:23:13      1
15       2019-04-01 12:25:47      1
16       2019-04-01 12:32:39      1
17       2019-04-01 12:55:32      1
18       2019-04-01 13:06:05      1
19       2019-04-01 13:29:35      1

如何按照 1hr 频率排序的时间对所有 1 进行聚类?

请帮忙!

标签: python-3.xpandaspandas-groupby

解决方案


如果你想要的是每小时得到多少个 1,你应该这样做

df['hour'] = df['time'].dt.hour
df.groupby('hour')['other_col'].sum()

其中time是带有时间戳的列other_col的名称和带有 1 的列的名称。

无论如何,这是一种更简单的方法来做评论中所说的 anky,但语法对初学者更友好。

希望这可以帮助!


推荐阅读