import pandas as pd
# 读取原始Excel文件
df = pd.read_excel(r'C:\Users\1\Desktop\DamaishujuStoreProductInfo.xlsx')
# 根据SiteAbbr列内容进行分组
groups = df.groupby('SiteAbbr')
# 遍历每个分组,生成新的Excel表格
for name, group in groups:
# 创建新的Excel文件名
output_filename = f'C:\\Users\\1\\Desktop\\{name}.xlsx'
# 保存分组数据到新的Excel文件
group.to_excel(output_filename, index=False)
- 使用pandas库中的
read_excel()
函数读取原始Excel文件,存储在DataFrame类型的变量df
中。 - 根据
SiteAbbr
列的内容对DataFrame进行分组,groups
是一个以SiteAbbr
列的唯一值为键,以该唯一值所对应的行为值的字典。 - 遍历每个分组,在指定的路径创建一个新的Excel文件名,并将分组的数据保存到新的Excel文件中。具体操作如下:
- 通过
groupby()
函数后,得到了以SiteAbbr
列唯一值为分组的DataFrameGroupBy对象,可以使用其.to_excel()
方法将分组后的数据写入到Excel文件中; - 使用f-string(Python 3.6及以上版本)构造新Excel文件的路径和文件名;
index=False
参数用于不保存DataFrame索引,只保存数据。