Python将Excel表格按某列拆分为多个sheet实现过程

 更新时间:2023年05月25日 10:20:36   作者:Victor  
这篇文章主要为大家介绍了Python实现将Excel表格按某列拆分为多个sheet,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

正文

实际数据分析中遇到需求,把某个Excel表格按照某一列分为多个sheet,并且要求如果某个key对应的行数较少应该合并到一个sheet中。

import pandas as pd
import bioquest as bq # https://jihulab.com/BioQuest/bioquest

演示

从网上找随便了个数据做演示用

input_file=r"https://gitee.com/zhjx19/chaoyanghospital/raw/master/%E6%9C%9D%E9%98%B3%E5%8C%BB%E9%99%A22018%E5%B9%B4%E9%94%80%E5%94%AE%E6%95%B0%E6%8D%AE.xlsx"
output_file=r"朝阳医院.xlsx"
key='商品名称'

读如数据,删除商品名称为na的行

data = pd.read_excel(input_file)
data.dropna(subset=key,inplace=True)

替换/,删除特殊字符(因为不能作为sheetname)

data.loc[:,key] = bq.st.replaces(string=data.loc[:,key],pattern=r"/",repl="每")
data.loc[:,key] = bq.st.replaces(string=data.loc[:,key],pattern=r"[\\*?:/\[\]]",repl="")

如果某个key对应的行数少于50则合并在合并的药物这个sheet中,其他的key单独存在对应的sheet中

keys=data.loc[:,key].unique().tolist()
few_dict = {}
single_dict = {}
for i in keys:
    data_sub = data.groupby(key).get_group(i)
    if data_sub.shape[0]<50:
        few_dict[i] = data_sub
    else:
        single_dict[i] = data_sub

合并sheet

第一次写出合并的药物sheet

few = pd.concat(few_dict,ignore_index=True)
few.to_excel(output_file, sheet_name="合并的药物", index=False)

循环append sheet,最后close

writer = pd.ExcelWriter(output_file, engine='openpyxl',mode="a")
for k,v in single_dict.items():
    v.to_excel(writer, sheet_name=f"{k}", index=False)
writer.close()

以上就是Python将Excel表格按某列拆分为多个sheet实现过程的详细内容,更多关于Python拆分Excel表为sheet的资料请关注脚本之家其它相关文章!

相关文章

  • Numpy安装、升级与卸载的详细图文教程

    Numpy安装、升级与卸载的详细图文教程

    Python官网上的发行版是不包含 NumPy 模块的,下面这篇文章主要给大家介绍了关于Numpy安装、升级与卸载的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • python数字图像处理之图像的批量处理

    python数字图像处理之图像的批量处理

    这篇文章主要为大家介绍了python数字图像处理之图像的批量处理示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • python opencv minAreaRect 生成最小外接矩形的方法

    python opencv minAreaRect 生成最小外接矩形的方法

    这篇文章主要介绍了python opencv minAreaRect 生成最小外接矩形的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-07-07
  • Python代码中偏函数的使用详解

    Python代码中偏函数的使用详解

    Python中的偏函数是来自函数式编程的一个强大工具,它的主要目标是减少函数调用的复杂性,本文将详细介绍偏函数的具体使用,需要的小伙伴可以了解下
    2023-12-12
  • 简单介绍Python2.x版本中的cmp()方法的使用

    简单介绍Python2.x版本中的cmp()方法的使用

    这篇文章主要介绍了简单介绍Python2.x版本中的cmp()方法的使用,然而该方法在Python3.x版本中已并不再内置...需要的朋友可以参考下
    2015-05-05
  • 在服务器上安装python3.8.2环境的教程详解

    在服务器上安装python3.8.2环境的教程详解

    这篇文章主要介绍了在服务器上安装python3.8.2环境的教程详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • 简单了解Django ContentType内置组件

    简单了解Django ContentType内置组件

    这篇文章主要介绍了简单了解Django ContentType内置组件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • python中的项目目录结构

    python中的项目目录结构

    这篇文章主要介绍了python中的项目目录结构,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • python语言是免费还是收费的?

    python语言是免费还是收费的?

    在本篇文章里小编给大家分享的是关于python语言是否免费的相关知识点,需要的朋友们可以学习下。
    2020-06-06
  • Python爬虫实现Cookie模拟登录

    Python爬虫实现Cookie模拟登录

    这篇文章主要介绍了Python爬虫实现Cookie模拟登录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11

最新评论