pandas如何在現(xiàn)有的Excel表格上新建工作表并添加dataframe
使用pandas包把數(shù)據(jù)結(jié)構(gòu)寫入Excel的時候,因為這個方法缺少了一個類似pd.to_csv()中的mode參數(shù)彤避,以至于你每次用諸如pd.to_excel的形式取寫入一個Excel的時候琉预,系統(tǒng)都會幫你重新創(chuàng)建一個文件蒿褂。也就是意味著前面的文件會被覆蓋掉啄栓,你得到的只能是最后一個df寫入的結(jié)果文件。
我們可以通過創(chuàng)建一個ExcelWriter對象块茁,來完美解決上面的問題数焊。
這個寫入對象崎场,會幫我們將DF寫入到工作簿中
pass
如果想把多個dataframe數(shù)據(jù)寫在同一個工作簿的同一個表里面:利用strartcol和startrow
writer2 = pd.ExcelWriter('test2.xlsx')
df1.to_excel(writer2)
df2.to_excel(writer2,startcol=8)
df3.to_excel(writer2,startrow=10)
df4.to_excel(writer2,startrow=10,startcol=8)
如果已經(jīng)存在一個Excel文件谭跨,怎么填入數(shù)據(jù)。
import pandas as pd
from openpyxl import load_workbook
book = load_workbook('d:/test.xlsx')
writer = pd.ExcelWriter("d:/test.xlsx",engine='openpyxl')
writer.book = book
df1.to_excel(writer,"first")
df2.to_excel(writer,"second")
writer.save()