【发布时间】:2020-12-29 00:13:35
【问题描述】:
我有一个数据框,其中包含部门、年份、发票月份、发票日期和金额。
我已经按工作日抵消了发票日期,现在我想要实现的是合并具有相同工作日数的所有月份(因此每年每个月的“计数”)并平均该值每天。
我掌握的数据如下:
Department Year Month Invoice Date Value
0 Sales 2019 March 2019-03-25 1000.00
1 Sales 2019 March 2019-03-26 2000.00
2 Sales 2019 March 2019-03-27 3000.00
3 Sales 2019 March 2019-03-28 4000.00
4 Sales 2019 March 2019-03-29 5000.00
... ... ... ... ... ...
2435 Specialist 2020 August 2020-08-27 6000.00
2436 Specialist 2020 August 2020-08-28 7000.00
2437 Specialist 2020 September 2020-09-01 8000.00
2438 Specialist 2020 September 2020-09-02 9000.00
2439 Specialist 2020 September 2020-09-07 1000.00
每个月的计数如下:
Year Month
2019 April 21
August 21
December 20
July 23
June 20
March 5
May 21
November 21
October 23
September 21
2020 April 21
August 20
February 20
January 22
July 23
June 22
March 22
May 19
September 5
我希望使用此计数可以汇总原始 df 和平均值的数据,例如 4 月、8 月、5 月、11 月、9 月(2019 年)以及 4 月(2020 年),因为它们都有 21 个工作日月。
每个月的每一天生成一个数据帧,平均每 # 天的月份组合。
我希望这是有道理的。
注意:请忽略 5 天的长度,这几个月的数据不完整...
谢谢
编辑:我刚刚意识到每个月的日子不会排成一行,所以我的计划是根据它是每月的第一个工作日,然后是第二个第三个工作日等来汇总它,而不管实际日期如何。 也(抱歉):我希望它可以按部门!
Department Month Length Day Number Average Value
0 Sales 21 1 20000
1 Sales 21 2 5541
2 Sales 21 3 87485
3 Sales 21 4 1863
4 Sales 21 5 48687
5 Sales 21 6 486996
6 Sales 21 7 892
7 Sales 21 8 985
8 Sales 21 9 14169
9 Sales 21 10 20000
10 Sales 21 11 5541
11 Sales 21 12 87485
12 Sales 21 13 1863
13 Sales 21 14 48687
14 Sales 21 15 486996
15 Sales 21 16 892
16 Sales 21 17 985
17 Sales 21 18 14169
......
所以为了更好地解释它,让我们以销售额和所有有 21 天的月份为例,对于这 21 天的月份中的每一天,我希望获得价值的平均值并得到一个看起来像的表格以上。
所以“第 1 天”是 21 天月中所有“第 1 天”的平均值(如计数 df 所示)!这是为了让我可以绘制一个折线图配置文件,以显示 21 天月份中每一天的平均收入值。我希望这是一个更好的解释,道歉。
【问题讨论】:
-
您是否正在寻找二维数据概念,例如多年来平均的月 x 天?这意味着您将有 12 个月 * 31 天的平均值?
标签: python pandas dataframe datetime