首页 > 解决方案 > 按小时分组时如何概括分类数据?

问题描述

我有一个如下所示的数据集。我有日期时间列作为索引,另一列有分类变量。type是一个分类变量。

start_time          type

2019-12-14 09:37:05 R
2019-12-14 09:40:05 D       
2019-12-14 10:06:25 C       
2019-12-14 10:44:21 C       
2019-12-14 10:50:21 R
2019-12-14 11:06:38 D       
2019-12-14 11:29:04 R   
2019-12-14 11:29:04 R   

现在,我想每隔一小时重新采样一次数据。我希望重新采样的数据如下所示

start_time              type

2019-12-14 09:00:00     R       
2019-12-14 10:00:00     C               
2019-12-14 11:00:00     D       

我应该在这里实现什么逻辑来选择每小时应该是什么类型的值?一种方法是取一小时内重复值的最大次数。例如,在 10:00:00,如果C出现 3 次,D 出现 1 次,R 出现 2 次。我可以将 C 分配给时间戳 10:00:00。

我还有什么其他方法可以处理这种情况?我的最终目标是预测接下来几个小时的类型序列,如果 RRCD 是前一个序列,那么接下来几个小时的下一个序列是什么?

谢谢

标签: pandasmachine-learningtime-series

解决方案


您可以构建一个分类器来进行预测!您可以创建一个数据框 X,其列对应于 Day、Month、Year、Hour、DayOfWeek,并使用简单的东西(如随机福雷斯特)进行预测。

from sklearn.ensemble import RandomForestClassifier

model = RandomForestClassifier()
model.fit(X)
model.predict(DataYouWantToMakePredictionsOn)

推荐阅读