首页 > 解决方案 > 迭代行以分隔具有不同值的行

问题描述

我正在尝试编写一个匿名且动态地迭代数据框的函数。该数据框由每天更新的 CSV 文件生成,它是所用材料的日志。有些项目将再次使用,但有些项目将是新的,如果稍后添加另一种类型的材料,我不想编写静态代码。示例:

Date      Type Amount_Used
5/14/20     A  15
5/14/20     A  16
5/14/20     B  15
5/14/20     C  15
5/14/20     A  16
5/14/20     B  16

我这样做是为了创建一份日终报告。所以我需要考虑所有使用过的物品以及使用了多少。项目每天都在变化,我可以在路上添加不同的项目。

标签: pythonpandasdataframeiteration

解决方案


您可以使用df.groupby并找出您想要的详细信息:

In [389]: df.groupby(['Date','Type'], as_index=False)['Amount_Used'].sum()                                                                                                                                  
Out[389]: 
      Date Type  Amount_Used
0  5/14/20    A           47
1  5/14/20    B           31
2  5/14/20    C           15

你的数据框在哪里df

由此可见:

对于date: 5/14/20

3项目(A,B,C)被使用。 Amount_Used当天的每件商品。


推荐阅读