效果介绍
按照某个字段分组,将表格拆分存储。
按照分组字段拆分。
源码
# -*- coding: utf-8 -*-
# @Time : 2021/11/3 10:46
# @Author : shawor
# @File : CaiFen.py
# @Software : PyCharm
# ======================================================
"""
文档说明:按字段分表
链接:参考链接:https://blog.csdn.net/AKlianwenlan/article/details/107123893
功能:
"""
print(__doc__)
import pandas as pd # 调用pandas包
import xlsxwriter # 调用xlswriter包,用来生成表
import os
data_path = ".\测试数据集.xlsx"
data = pd.read_excel(data_path) # 可以添加sheetname
# print(data)
# data = data.drop("No.", axis=1) # 删除不需要存储的字段
area_list = list(set(data["分组参考"])) # 需要分组的字段,set保证是单一的
# 两种促成模式
def select(n):
if n == 1:
save_path = ".\over数据集.xlsx"
writer = pd.ExcelWriter(save_path, engine='xlsxwriter') # 生成一个新 工作簿
data.to_excel(writer, sheet_name="总表", index=False) # 将总表存到新工作簿中
for j in area_list:
df = data[data["分组参考"] == j]
df.to_excel(writer, sheet_name=j, index=False) # 按分成的列表中的分公司字段进行命名
writer.save() # 文件保存
print("到一个表了" + "over————" * 6)
if n == 2:
for j in area_list:
df = data[data["分组参考"] == j]
path = os.path.join('.\over', j + '_over.xlsx') # 拼接路径
# print(path)
writer = pd.ExcelWriter(path, engine='xlsxwriter')
df.to_excel(writer, sheet_name=j, index=False) # 按分成的列表中的分公司字段进行命名
writer.save() # 文件保存
print("输入你的选择:1.存到一个表 2.存到多个表\n")
n = int(input("输入选择:"))
print(n)
select(n)