合並多個文件夾下多個excel表格 python操作


整理多個excel文件是家常便飯,剛開始整理得頭都痛。
於是,想找偷懶的方法一步合並。
Finally, 寫了個小腳本搞定。
思路很簡單,這里是我平時用的,給excel新增了列,展示數據,所以看起來會繁復一點,不需要就直接注釋掉,快很多簡潔很多。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Time: 2020/1/10 22:08
# author: Hush

import os
import glob
import pandas as pd

# 先建立一個空的二維表
yewu_data = pd.DataFrame()
row_num = 0
# 下面是我的文件夾位置,我在桌面的sale文件夾下,放了5個文件夾,分別是5家店鋪的銷售數據。
# 5個文件夾里又各自放了每家店鋪在12月份1-31號每天的銷售報表。
folder_path = r'C:\Users\…\Desktop\sale\*'  #這里是大文件夾的位置
folder = glob.glob(folder_path)  # 讀取文件夾里放了什么東西,因為我寫了*,所以什么都會被認出來  

for i in folder:
    # print(i)
    excel_list = os.listdir(i)
    print('文件夾%s下有%d張excel表:' % (str(i.split('\\')[5]), len(excel_list)), excel_list)
    for j in excel_list:
        # print(j)
        excel_path = i + '\\' + str(j)
        data1 = pd.read_csv(excel_path, skiprows=0)
        rows = data1.shape[0]
        row_num = row_num + rows
        # 新增兩個變量,如果你不新增,直接刪掉
        data1['店鋪'] = excel_path.split('\\')[5]       
        data1['時間'] = '2020-01-' + str(j.split('.')[0])
        # print(row_num)
        yewu_data = pd.concat([yewu_data, data1])
        # print(yewu_data)


yewu_data.to_excel(folder_path.replace(r'*', '') + r'all.xlsx', index=False)
print('表演完畢')
print('此次新增行數:', row_num)


如果有更好的方法,歡迎告訴我哦


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM