如何使用for循环创建具有不同名称的多个数据帧

2024-09-29 22:33:37 发布

您现在位置:Python中文网/ 问答频道 /正文

for key in CatDict:
    CatName = CatDict[key]['name']
    print('This is the ' + CatName + 'info')
    **Problem Area (CatName + 'DF')** = CalcDF[CalcDF.Cat == CatDict[key]['number']]

基本上,我正在尝试创建一个新的数据帧,该数据帧通过将“CatName”与字符串“DF”连接起来命名,用于该循环的每次迭代

我在这方面遇到了很多麻烦,我不确定我想做的事情是否可行

数据帧已经在for循环外部形成了,我只是这样做,为它们分配我想要的数据

多谢各位


Tags: the数据keynameininfodffor
2条回答

您可以将内置函数exec用作:

for key in CatDict:
CatName = CatDict[key]['name']
print('This is the ' + CatName + 'info')
exec('{}DF = CalcDF[CalcDF.Cat == CatDict[key]['number']]'.format(CatName)) 

您正在尝试创建变量名。不建议这样做。相反,您可以创建dictionary个数据帧,并将其变量名作为键:

dataframes = {key[‘name’] + 'DF': CalcDF[CalcDF.Cat == CatDict[key]['number']] for key in CatDict}

相关问题 更多 >

    热门问题