首页 > 解决方案 > python通过'变量名称列表'中的str调用变量(concat 100数据帧)

问题描述

#variables for df
a = pd.read_excel("/Downloads/1.xls")
b = pd.read_excel("/Downloads/2.xls")
c = pd.read_excel("/Downloads/3.xls")
d = pd.read_excel("/Downloads/4.xls")
e = pd.read_excel("/Downloads/5.xls")

#I want to concat them
pd.concat((a,b,c,d,e))

但问题是变量名称太长,大约有 100 个数据框变量。因此我想:

variables_list = ['a' ,'b', 'c', 'd', 'e']
pd.concat(variables_list)

当然,这是行不通的。我只是想解释一下我想做什么。任何人都知道如何在 python 中一次连接大约 100 个数据帧?

标签: pythondataframeconcat

解决方案


你可以使用python的list

import pandas as pd

a = []
for i in range(download_num):
    a.append(pd.read_excel("/Downloads/{}.xls".format(i)))

concatenated_df = pd.concat(a)

如果您已经有文件名列表

import pandas as pd

a = []
for fn in filenames:
    a.append(pd.read_excel("/Downloads/" + fn))

concatenated_df = pd.concat(a)

推荐阅读