Python 所有日期的总和分组列

Python 所有日期的总和分组列,python,pandas,dataframe,Python,Pandas,Dataframe,我有下面的df qty,其中包含日期和重复项目的数量 DF qty | date | qty | item | ccy | +------------+------+----------+-----+ | 2015-01-01 | 700 | CB04 box | USD | | 2015-01-01 | 500 | CB04 box | USD | | 2015-01-01 | 1500 | AB01 box | USD | | 2015-01-02 | 550 |

我有下面的
df qty
,其中包含日期和重复项目的数量

DF qty
|    date    | qty  |   item   | ccy |
+------------+------+----------+-----+
| 2015-01-01 |  700 | CB04 box | USD |
| 2015-01-01 |  500 | CB04 box | USD |
| 2015-01-01 | 1500 | AB01 box | USD |
| 2015-01-02 |  550 | CB04 box | USD |
| 2015-01-02 |  750 | AB01 box | USD |
| 2015-01-02 |  500 | AB01 box | USD |
| 2015-01-03 |  100 | AB01 box | USD |
| 2015-01-03 |  200 | AB01 box | USD |
| 2015-01-03 |  300 | AB01 box | USD |
我需要一些建议,如何使此
DF qty
如下所示:

DF qty
|    date    | qty  |   item   | ccy |
+------------+------+----------+-----+
| 2015-01-01 | 1200 | CB04 box | USD |
| 2015-01-01 | 1500 | AB01 box | USD |
| 2015-01-02 |  550 | CB04 box | USD |
| 2015-01-02 | 1250 | AB01 box | USD |
| 2015-01-03 |  600 | AB01 box | USD |
我所做的是,为每个
日期
创建一个子集
df
,然后按
数量
对它们进行分组

<代码>数量=数量[数量[日期]='2015-01-01']

然后

## Sum items lots 
qty = qty.groupby('item').agg({'date': 'first',
                                'ccy':'first',    
                                'qty' : 'sum'}).reset_index()

这个过程是非常重复的,我希望有一些东西可以对所有的
日期执行此操作,并对
数量的
项目进行汇总

您可以同时对多个列进行
分组。在这种情况下,看起来您希望在同一天以相同的货币找到给定项目的总金额。这意味着您要按
['date'、'item'、'ccy']分组。

df.groupby(['date', 'item', 'ccy']).sum().reset_index()
产出:

         date      item  ccy   qty
0  2015-01-01  AB01_box  USD  1500
1  2015-01-01  CB04_box  USD  1200
2  2015-01-02  AB01_box  USD  1250
3  2015-01-02  CB04_box  USD   550
4  2015-01-03  AB01_box  USD   600