欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python將Excel表格按某列拆分為多個(gè)sheet實(shí)現(xiàn)過程

 更新時(shí)間:2023年05月25日 10:20:36   作者:Victor  
這篇文章主要為大家介紹了Python實(shí)現(xiàn)將Excel表格按某列拆分為多個(gè)sheet,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

實(shí)際數(shù)據(jù)分析中遇到需求,把某個(gè)Excel表格按照某一列分為多個(gè)sheet,并且要求如果某個(gè)key對(duì)應(yīng)的行數(shù)較少應(yīng)該合并到一個(gè)sheet中。

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

演示

從網(wǎng)上找隨便了個(gè)數(shù)據(jù)做演示用

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"朝陽醫(yī)院.xlsx"
key='商品名稱'

讀如數(shù)據(jù),刪除商品名稱為na的行

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

替換/,刪除特殊字符(因?yàn)椴荒茏鳛閟heetname)

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="")

如果某個(gè)key對(duì)應(yīng)的行數(shù)少于50則合并在合并的藥物這個(gè)sheet中,其他的key單獨(dú)存在對(duì)應(yīng)的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)

循環(huán)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表格按某列拆分為多個(gè)sheet實(shí)現(xiàn)過程的詳細(xì)內(nèi)容,更多關(guān)于Python拆分Excel表為sheet的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python貪吃蛇游戲代碼

    python貪吃蛇游戲代碼

    這篇文章主要為大家詳細(xì)介紹了python貪吃蛇游戲代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • 終止python代碼運(yùn)行的3種方式詳析

    終止python代碼運(yùn)行的3種方式詳析

    這篇文章主要給大家介紹了關(guān)于終止python代碼運(yùn)行的3種方式,python是解釋運(yùn)行的程序,程序進(jìn)入死循環(huán)或者其它異常都會(huì)導(dǎo)致程序無法正常結(jié)束,需要的朋友可以參考下
    2023-07-07
  • python 中的collections.OrderedDict() 用法

    python 中的collections.OrderedDict() 用法

    這篇文章主要介紹了python 中的collections.OrderedDict() 用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python寫的英文字符大小寫轉(zhuǎn)換代碼示例

    Python寫的英文字符大小寫轉(zhuǎn)換代碼示例

    這篇文章主要介紹了Python寫的英文字符大小寫轉(zhuǎn)換代碼示例,本文例子相對(duì)簡單,本文直接給出代碼實(shí)例,需要的朋友可以參考下
    2015-03-03
  • 如何利用python寫GUI及生成.exe可執(zhí)行文件

    如何利用python寫GUI及生成.exe可執(zhí)行文件

    工作中需要開發(fā)一個(gè)小工具,簡單的UI界面可以很好的提高工具的實(shí)用性,由此開啟了我的第一次GUI開發(fā)之旅,這篇文章主要給大家介紹了關(guān)于如何利用python寫GUI及生成.exe可執(zhí)行文件的相關(guān)資料,需要的朋友可以參考下
    2021-12-12
  • python 判斷字符串中是否含有漢字或非漢字的實(shí)例

    python 判斷字符串中是否含有漢字或非漢字的實(shí)例

    今天小編就為大家分享一篇python 判斷字符串中是否含有漢字或非漢字的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 使用qt quick-ListView仿微信好友列表和聊天列表的示例代碼

    使用qt quick-ListView仿微信好友列表和聊天列表的示例代碼

    本文以微信好友列表為例給大家學(xué)習(xí)listview的相關(guān)知識(shí),通過實(shí)例demo給大家詳解qt quick-ListView仿微信好友列表和聊天列表的實(shí)現(xiàn)方法,需要的朋友參考下吧
    2021-06-06
  • python+opencv3.4.0 實(shí)現(xiàn)HOG+SVM行人檢測的示例代碼

    python+opencv3.4.0 實(shí)現(xiàn)HOG+SVM行人檢測的示例代碼

    這篇文章主要介紹了python+opencv3.4.0 實(shí)現(xiàn)HOG+SVM行人檢測的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python實(shí)現(xiàn)基于標(biāo)記的分水嶺分割算法

    Python實(shí)現(xiàn)基于標(biāo)記的分水嶺分割算法

    分水嶺技術(shù)是一種眾所周知的分割算法,特別適用于提取圖片中的相鄰或重疊對(duì)象。本文將用Python實(shí)現(xiàn)基于標(biāo)記的分水嶺分割算法,感興趣的可以了解一下
    2022-07-07
  • 淺談python 導(dǎo)入模塊和解決文件句柄找不到問題

    淺談python 導(dǎo)入模塊和解決文件句柄找不到問題

    今天小編就為大家分享一篇淺談python 導(dǎo)入模塊和解決文件句柄找不到問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12

最新評(píng)論