<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
提示:這裡可以新增本文要記錄的大概內容:
將一個EXCEL等份拆成多個EXCEL
將多個小EXCEL合併成一個大EXCEL並標記來源
提示:以下是本篇文章正文內容,下面案例可供參考
程式碼如下(範例):
import pandas as pd import os work_dir=r"G:360Downloadsmyselfzuoye合併拆分" splits_dir=f"{work_dir}splits" #如果不存在splits資料夾則建立它 if not os.path.exists(splits_dir): os.mkdir(splits_dir) #引入原始檔 df_source=pd.read_excel(f"{work_dir}/5月份臺賬.xlsx",sheet_name="5月份臺賬87334",skiprows=2) df_source.head(3) df_source.index df_source.shape total_row_count=df_source.shape[0] total_row_count #拆分成多個大小相同的excel #1.使用df.iloc方法 #2.使用dataframe.to_excel儲存到每個小excel中 #計算拆分後小excel的行數 user_names=["xiaoA","xiaoB","xiaoC","wmy","jzz","xmw"] #每個人的任務數 split_size=total_row_count//len(user_names) if total_row_count%len(user_names)!=0: split_size+=1 split_size #拆分多個dataframe df_subs=[] #enumerate() 函數用於將一個可遍歷的資料物件(如列表、元組或字串)組合為一個索引序列 for idx,user_name in enumerate(user_names): #iloc的開始索引 begin=idx*split_size #iloc的結束索引 end=begin+split_size #實現df按照iloc拆分 df_sub=df_source.iloc[begin:end] #將每個子df存入列表 df_subs.append((idx,user_name,df_sub)) #將每個dataframe存入excel for idx,user_name,df_sub in df_subs: filename=f"{splits_dir}/ee_{idx}_{user_name}.xlsx" df_sub.to_excel(filename,index=False)
1、遍歷資料夾,得到要合併的excel檔案列表
2、分別讀取到dataframe,給每一列標記來源
3、使用pd.conca進行df批次合併
4、將合併後的dataframe輸出到excel
程式碼如下(範例):
import pandas as pd import os work_dir=r"G:360Downloadsmyselfzuoye合併拆分" splits_dir=f"{work_dir}splits" #如果不存在splits資料夾則建立它 if not os.path.exists(splits_dir): os.mkdir(splits_dir) #遍歷資料夾,得到要合併的excel名稱列表 excel_names=[] for excel_name in os.listdir(splits_dir): excel_names.append(excel_name) excel_names df_list=[] for excel_name in excel_names: #讀取每個excel到df excel_path=f"{splits_dir}/{excel_name}" df_split=pd.read_excel(excel_path) username=excel_name.replace("ee_","").replace(".xlsx","")[2:] print(excel_name,username) #新增列,使用者名稱字 df_split["username"]=username df_list.append(df_split) #concat合併 df_merged=pd.concat(df_list) df_merged.shape df_merged.head() df_merged["username"].value_counts() #輸出 df_merged.to_excel(f"{work_dir}/merged.xlsx",index=False)
到此這篇關於Pandas實現批次拆分與合併Excel的範例程式碼的文章就介紹到這了,更多相關Pandas拆分合並Excel內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45