比较openpyxl中的多个单元格
Compare multiple cells in openpyxl
我需要在openpyxl中对多个单元格进行比较,但我没有成功。更准确地说,我将一个 .xlsx 文件导入到 python 脚本中,该文件包含 4 列和大约 70,000 行。前 3 列相同的行必须合并并添加第四列中出现的数字。
例如
第 1 行 .. material 的类型:A |地点:纽约 |销售月份:一月 |费用:100
..
第 239 行 material 的类型:A |地点:纽约 |销售月份:一月 |费用:150
..
第 1020 行 material 的类型:A |地点:纽约 |销售月份:一月 |费用:80
..
等等
假设只存在这样的匹配项,必须生成新数据 table(例如在数据 sheet 中),其中只有一行以这种方式出现:
material的类型:A |地点:纽约 |销售月份:一月 |成本:330(成本总和)
依此类推,将.xlsx文件中的所有数据合并得到一个新的table.
我希望解释清楚,但如果不是,我可以在必要时更加精确。
正如我在开头提到的,到目前为止我还没有成功,所以我将不胜感激!
非常感谢
而不是通过 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
,您将需要修复标签
我需要在openpyxl中对多个单元格进行比较,但我没有成功。更准确地说,我将一个 .xlsx 文件导入到 python 脚本中,该文件包含 4 列和大约 70,000 行。前 3 列相同的行必须合并并添加第四列中出现的数字。
例如
第 1 行 .. material 的类型:A |地点:纽约 |销售月份:一月 |费用:100
..
第 239 行 material 的类型:A |地点:纽约 |销售月份:一月 |费用:150
..
第 1020 行 material 的类型:A |地点:纽约 |销售月份:一月 |费用:80
..
等等
假设只存在这样的匹配项,必须生成新数据 table(例如在数据 sheet 中),其中只有一行以这种方式出现:
material的类型:A |地点:纽约 |销售月份:一月 |成本:330(成本总和)
依此类推,将.xlsx文件中的所有数据合并得到一个新的table.
我希望解释清楚,但如果不是,我可以在必要时更加精确。
正如我在开头提到的,到目前为止我还没有成功,所以我将不胜感激!
非常感谢
而不是通过 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
,您将需要修复标签