1. 程式人生 > >python將所有excel文件合併

python將所有excel文件合併

#匯入不同的庫
from pandas import DataFrame
import os
import xlrd
import pandas as pd
#將所有檔案放在a資料夾,首先獲取列名
path = r'C:/Users/user/Desktop/a'
files = os.listdir(path)
rowname=[]
for i in files:
    wb=xlrd.open_workbook(u'C:/Users/user/Desktop/a/%s'%i)
    sh = wb.sheet_by_index(0)
    for j in sh.row_values(0):
        rowname.append(j)
rowname = list(set(rowname))#列名去重
print "獲取列名成功!"
#根據列名將所有的檔案從第二行開始合併
for i,j in enumerate(files):
    print j,"開始獲取資料!"
    data=pd.read_excel(u'C:/Users/user/Desktop/a/%s'%j)
    if i==0:
        dff=DataFrame(data, columns=rowname)
    if i<>0:
        dff = dff.append(data,ignore_index=True)
    print j,"獲取資料成功!"
print "正在合成!"
#儲存到一個b檔案下
dff.to_excel(u'C:/Users/user/Desktop/b.xlsx')