我如何在python中使用for循环制作熊猫数据框对象

Posted

技术标签:

【中文标题】我如何在python中使用for循环制作熊猫数据框对象【英文标题】:how can i make pandas dataframe objects using for loop in python 【发布时间】:2020-09-04 08:41:09 【问题描述】:

我想使用 for 循环从多个文件 file1.xlsx、file2.xlsx ... 创建多个 pandas 数据框 df1、df2、df3、...

filenames = 'file1.xlsx','file2.xlsx','file3.xlsx','file4.xlsx','file5.xlsx'

for i in range(len(filenames)):
    df+str(i) = pd.read.excel(filenames[i])

并得到语法错误“无法分配给运算符”我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

尝试locals但不推荐

filenames = 'file1.xlsx','file2.xlsx','file3.xlsx','file4.xlsx','file5.xlsx'
variables = locals()
for i in range(len(filenames)):
   variables["df0".format(i)]  = pd.read.excel(filenames[i])

我们一般保存到dict

filenames = 'file1.xlsx','file2.xlsx','file3.xlsx','file4.xlsx','file5.xlsx'
d='df'+str(i) :  pd.read.excel(filenames[i]) for i in range(len(filenames))

【讨论】:

【参考方案2】:

你能试试这样的吗?使用exec给变量赋值?

filenames = ['file1.xlsx','file2.xlsx','file3.xlsx','file4.xlsx','file5.xlsx']

for fname in filenames:
    dfname = fname.split('.')[0]
    df = pd.read_excel(fname)
    exec("%s=%s" % (dfname , df))

【讨论】:

以上是关于我如何在python中使用for循环制作熊猫数据框对象的主要内容,如果未能解决你的问题,请参考以下文章

python - 如何通过python中的键在循环中命名熊猫数据框?

如何在 for 循环中附加熊猫数据框中的行?

如何从 for 循环构建和填充熊猫数据框? [复制]

Python:在熊猫中制作数据框[关闭]

如何在循环中附加多个熊猫数据框?

For循环子集化的熊猫数据框