2017年7月10日 星期一

Python - How to append new rows from pandas dataframe to existing excel - 如何將新資料append到已存在的excel檔

Python version :Python 3.6.0 :: Anaconda 4.3.1 (64-bit)
Pandas version :0.19.2
System version :Windows 10
import pandas as pd
import os
from datetime import datetime
# def
# create dir
def mkdir(path):
    import os
    if  os.path.exists(path) == False:
        os.makedirs(path)
        print('mkdir:',path)
    elif  os.path.exists(path) == True:
        print('dir already exist:',path)
# 建立樣本資料   
number = [1,2,3,4,5]
sex = ['male','female','female','female','male']
df_new = pd.DataFrame()
df_new['number'] = number
df_new['sex'] = sex
df_new

# excel存放的資料夾
file_dir='E:/download/tmp/python/%s/' % (datetime.now().strftime("%Y%m%d"))
# 若資料夾不存在,建立指定資料夾
mkdir(file_dir)
file_out=file_dir+'test.xlsx'
# 如果檔案不存在,建立檔案
if  os.path.exists(file_out) == False:
    df_new.to_excel(file_out,index=False)
# 如果檔案存在,append
elif  os.path.exists(file_out) == True:
    df_old = pd.read_excel(file_out)
    df_combine = df_old.append(df_new)
    df_combine.to_excel(file_out,index=False)
執行結果:

沒有留言:

張貼留言