比较openpyxl中的多个单元格

时间:2017-10-28 21:56:25

标签: python openpyxl

我需要在openpyxl中对多个单元格进行比较,但我还没有成功。更确切地说,我有一个.xlsx文件,我导入到我的python脚本中,它包含4列,大约70,000行。必须连接具有相同前3列的行,并添加第4列中显示的数字。

例如

第1行。材料类型:A |地点:纽约州销售月份:1月|费用:100

...

第239行材料类型:A |地点:纽约州销售月份:1月|费用:150

...

第1020行材料类型:A |地点:纽约州销售月份:1月|费用:80

...

假设只存在这样的匹配,必须生成一个新的数据表(例如在数据表中),其中只有一行以这种方式出现:

材料类型:A |地点:纽约州销售月份:1月|费用:330(费用总和)

依此类推,使用.xlsx文件中的所有数据来获取新的统一表。

我希望能够清楚地了解这些解释,但如果不是,我可以在必要时更加精确。

正如我在开始时所提到的,到目前为止我还没有成功,所以我将不胜感激任何帮助!

非常感谢

1 个答案:

答案 0 :(得分:0)

而不是通过openpyxl阅读,我会使用pandas

import pandas as pd

raw_data = pd.read_excel(filename, header=0)
summary = raw_data.groupby(['Type of material', 'Location', 'Month of sale'])['Cost'].sum()

如果这会引发一些KeyError s,则需要修复标签