我尝试在Python中以各种不同的方式聚合this呼叫中心数据,例如按类型和优先级划分的平均q峎u时间。使用df.groupby
这相当简单。在
不过,我也希望能够按通话量汇总。问题是每一行数据都代表一个调用,所以我不知道该怎么做。如果我只是按日期分组,那么我可以使用'count'
作为聚合函数,但如何按工作日聚合,即创建一个数据帧,如:
weekday mean_row_count
1 100
2 150
3 120
4 220
5 200
6 30
7 35
有什么好办法吗?我所能想到的就是在每个工作日循环计算唯一日期的数量,然后将每个工作日的计数除以唯一日期的数量,但我认为这可能会变得一团糟,如果我还需要按其他变量分组,或是按一天中的日期和小时进行分组,那么这可能会变得一团糟,而且可能会减慢速度。在
当我发现自己在思考如何以一种通用的方式聚合和查询数据时,它认为解决方案可能是一个数据库。SQLite是一个轻量级的嵌入式数据库,对于简单的用例具有高性能,Python和对它的本地支持。在
我的建议是:为您的数据创建一个数据库和一个表,最终根据您的需要添加辅助表,将数据加载到其中,并使用交互式sqlite或Python脚本进行查询。在
由于每个调用的日期都是给定的,所以一个想法是实现一个函数,从给定的日期确定一周中的哪一天。有很多方法可以做到这一点,比如康威的末日算法。 https://en.wikipedia.org/wiki/Doomsday_rule
然后,你可以浏览每一行,确定工作日,并将每个工作日的计数相加。在
相关问题 更多 >
编程相关推荐