Python利用pandas库合并多个excel文件(行扩充)
pandas库对于操作excel文件还是较为方便的。
例如读取一个excel文件:
import pandas as pd
path = '待读取的excel文件路径'
df_data = pd.read_excel(path, header = 0)
pd.read_excel()返回值类型为DataFrame。
操作DataFrame的方法可以参照这篇文章:https://www.jb51.net/article/141612.htm
这里列举两个 合并excel文件的方法。
1、concat() 方法
此方法是先将所有excel文件读出为DataFrame对象,并将它们存放在list中。
调用pd.concat()将其合并成一个新的DataFrame对象,最后输出到新文件中。
import os
import pandas as pd
# excel文件合并
def merge_excel(input_path, output_path):
file_list = os.listdir(input_path)
dfs = list()
for f in file_list:
df = read_excel(input_path+f)
dfs.append(df)
total_df = pd.concat(dfs)
total_df.to_excel(output_path, index = False)
2、append() 方法
此方法是每读取一个excel文件,便调用DataFrame.append()将其合并到前一DataFrame对象中,最后输出到文件。
import os
import pandas as pd
# excel文件合并
def merge_excel(input_path, output_path):
file_list = os.listdir(input_path)
total_df = pd.DataFrame()
for f in file_list:
df = read_excel(input_path+f)
total_df = total_df.append(df,ignore_index=True)
# 输出到文件中
total_df.to_excel(output_path, index = False)