将多个 Excel 个文件 (xlsx) 添加到 python

Append Multiple Excel Files(xlsx) together in python

import pandas as pd
import os
import glob


all_data = pd.DataFrame()
for f in glob.glob("output/test*.xlsx")
    df = pd.read_excel(f)
    all_data = all_data.append(df, ignore_index=True)

我想将多个xlsx文件合并到一个xlsx中。 excel 文件位于 output/test 文件夹中。列都是相同的,但我想连接行。上面的代码似乎不起作用

all_data 成为一个列表。

all_data = []
for f in glob.glob("output/test/*.xlsx"):
    all_data.append(pd.read_excel(f))

现在,致电pd.concat

df = pd.concat(all_data, ignore_index=True)

确保所有列名都相同,否则此解决方案将不起作用。


您还可以使用上面 for 循环的 map 版本:

g = map(pd.read_excel, glob.glob("output/test/*.xlsx"))
df = pd.concat(list(g), ignore_index=True)

或者 list comprhension 方法,如其他答案所示。

使用list comprehension + concat:

all_data = [pd.read_excel(f) for f in glob.glob("output/test/*.xlsx")]
df = pd.concat(all_data, ignore_index=True)