python按行求和_Python第一篇:对3个Excel文件进行整合
?? 繼6月24日發(fā)了一篇Python的安裝之后,憋了一個(gè)月,終于準(zhǔn)備發(fā)一篇實(shí)用的Python應(yīng)用于Excel的例文。
????? 這篇例文,是將三個(gè)工資文件合并為一個(gè),并進(jìn)行按人及按月的合計(jì)。
????? 先來(lái)看看三個(gè)工資文件的內(nèi)容。?????
???? 第一個(gè)文件:202001工資.xlsx
???? 第二個(gè)文件:202002工資.xlsx
(多了一個(gè)人“陳淑樺”,多了一列“補(bǔ)助”)
第三個(gè)文件:202003工資.xlsx
# 讀入多個(gè)excel數(shù)據(jù)
import os
import pandas as pd
#這里需要改成自己的目標(biāo)目錄
os.chdir("D:/優(yōu)度/common/培訓(xùn)/excel技巧/微信公眾號(hào)-excel/tmp/20200721")
datalist = []
cur_path = os.getcwd()
for file_name in os.listdir(cur_path):
??? #print(file_name)
??? if file_name[-5:] == '.xlsx' or file_name[-4:] == '.xls':
??????? #防止臨時(shí)文件
??????? if file_name[0] == '.':
??????????? continue
??????? #開始讀入數(shù)據(jù)
??????? data = pd.read_excel(file_name, index_col='姓名')
??????? datalist.append(data)
# 按行合并 inner 交集? outer并集
result = pd.concat(datalist,join='outer',axis=1)
result
# 填充數(shù)據(jù)
result = result.fillna(0)
# 按行求和
result.sum(axis=1)
#按列求和
result.sum(axis=0)
# 存入excel
writer = pd.ExcelWriter(r'summary.xlsx', engine= 'xlsxwriter')
#result .to_excel(writer,sheet_name='年收入')
result.sum(axis=0).to_excel(writer,sheet_name='豎列求和')
result.sum(axis=1).to_excel(writer,sheet_name='橫列求和')
result .to_excel(writer,sheet_name='明細(xì)')
writer.save()
這里原本只有3個(gè)Excel文件
運(yùn)行過(guò)后,多了一個(gè)“ summary.xlsx"。三個(gè)輸出結(jié)果都在這里。
打開"summary.xlsx"是這個(gè)樣子滴!
喜歡就跟我一起學(xué)Python吧!!
總結(jié)
以上是生活随笔為你收集整理的python按行求和_Python第一篇:对3个Excel文件进行整合的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: dataframe 空值替换为0_缓解P
- 下一篇: js中同时得到整数商及余数_苏教版小学数