这个问题在这里已有答案:
我有一个功能,我分析实验数据(所有单独的.txt文件)
此函数输出Pandas Dataframes的字典({})
有没有一种有效的方法来迭代这个字典并输出单个数据帧?假设我的词典叫做analydict
for key in analysisdict.keys():
dfx=pd.concat([analysisdict[key]['X'], analysisdict[key]['Y']], axis=1)
其中dfx是一个单独的数据帧。 (我猜可能需要第二个循环?也许我应该遍历一个df名称列表?)
输出将是df1 ... dfn
编辑:我最初误读了你的问题,并认为你想将所有的DataFrame连接成一个。这样做:
dfx = pd.concat([df for df in analysisdict.values()], ignore_index=True)
(感谢@ paul-h为ignore_index=True
提示)
我更仔细地阅读了您的问题,并意识到您正在询问如何将字典中的每个DataFrame分配给自己的变量,从而生成名为df1, df2, ..., dfn
的单独DataFrame。根据我的经验,一切都说以这种方式动态创建变量是一种反模式,最好留给词典。看看这里的讨论:How can you dynamically create variables via a while loop?