使用Pandas对Excel文件进行合并或分割

(1)将多个数据写入一个xlsx的多个Sheet:

import pandas as pd
 
#读取两个表格
data1=pd.read_excel('文件路径')
data2=pd.read_excel('文件路径')
 
#将两个表格输出到一个excel文件里面
writer=pd.ExcelWriter('D:新表.xlsx')
data1.to_excel(writer,sheet_name='sheet1')
data2.to_excel(writer,sheet_name='sheet2')
 
#必须运行writer.save(),不然不能输出到本地
writer.save()

(2)将多个数据写入一个xlsx的同一个Sheet(追加):

import pandas as pd

#读取两个表格
data1 = pd.DataFrame(pd.read_excel('文件路径'))
data2 = pd.DataFrame(pd.read_excel('文件路径'))

#合并数据
data = data1.append(data2)

#写入数据
data.to_excel('新文件.xlsx',sheet_name='sheet1')

(3)将一个数据写入一个xlsx的多个Sheet(分割):

import pandas as pd

#读取数据
data = pd.DataFrame(pd.read_excel('文件路径'))

#数据切割保存
lineMax = 1000  #每个Sheet要保存的最大行数
writer = pd.ExcelWriter('新表.xlsx')
pageIndex = 0 

while (data.shape[0]>lineMax *pageIndex):   #data.shape[0] 是data的总行数
    start  = lineMax *pageIndex
    if lineMax *(pageIndex+1) < data.shape[0]:
        end = lineMax *(pageIndex+1)
    else:
        end = data.shape[0]
    save_data = data.iloc[start:end]  #数据分割
    
    pageIndex = pageIndex +1
    save_data.to_excel(writer,sheet_name = 'sheet'+str(pageIndex))

writer.save()


    

 

你可能感兴趣的:(python)