python按行求和_Python第一篇:对3个Excel文件进行整合

   继6月24日发了一篇Python的安装之后,憋了一个月,终于准备发一篇实用的Python应用于Excel的例文。

      这篇例文,是将三个工资文件合并为一个,并进行按人及按月的合计。

      先来看看三个工资文件的内容。     

     第一个文件:202001工资.xlsx

9d7c06ede4be100c3f0e2c486b3ea6ad.png

     第二个文件:202002工资.xlsx

(多了一个人“陈淑桦”,多了一列“补助”)

0b5cb25ac00e0e3db37504eabfd4a8a9.png

第三个文件:202003工资.xlsx

e647852fd0a83a16ab82ff55a08e2e81.png

33c18ad248850ed88e39af5c34a7bd5c.png

57859138e134356d1e87dab01c9bcfa5.png

18ccc101ecfd5a5f5bb44f3b60eed708.png

9fe30011efb315f7600036257d7c2038.png

12f1eb7f820bababe75a0b8fb4e8b103.png

# 读入多个excel数据
import os
import pandas as pd

#这里需要改成自己的目标目录
os.chdir("D:/优度/common/培训/excel技巧/微信公众号-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':
        #防止临时文件
        if file_name[0] == '.':
            continue
        #开始读入数据
        data = pd.read_excel(file_name, index_col='姓名')
        datalist.append(data)

# 按行合并 inner 交集  outer并集
result = pd.concat(datalist,join='outer',axis=1)
result

# 填充数据
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='明细')
writer.save()

ab6cd84eb38aa4aec28103b8800b65c0.png

这里原本只有3个Excel文件

33836f4f39e45b72980203541e7e760a.png

运行过后,多了一个“ summary.xlsx"。三个输出结果都在这里。

5f41c65f51597d55638a210a4f12b730.png

打开"summary.xlsx"是这个样子滴!

92e38e41387d1d960093d2530a381ca0.png

喜欢就跟我一起学Python吧!!

3a3edf67f2fca6d8831b76f827afa4ac.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值