从数据框的python字典创建/获取/提取多个数据框

时间:2018-06-22 07:54:18

标签: python pandas dataframe

我有一个python字典,其中键作为数据集名称,值作为整个数据帧本身,请参见下面的字典dict

[数据帧字典]

一种手动​​编写所有代码的方式ID,如下所示:

csv = dict['csv.pkl']
csv_emp = dict['csv_emp.pkl']    
csv_emp_yr= dict['csv_emp_yr.pkl']    
emp_wf=dict['emp_wf.pkl']
emp_yr_wf=dict['emp_yr_wf.pkl']

但是随着更多的数据集,这将变得非常低效。 任何有关如何通过循环完成此操作的帮助吗?

1 个答案:

答案 0 :(得分:0)

尽管我不推荐这种方法,但是您可以尝试以下方法:

import sys
this = sys.modules[__name__] # this is now your current namespace
for key in dict.keys():
    setattr(this, key, dict[key])

现在,您可以检查名称与字典键相同的新变量。

globals()存在风险,因为它可以为您提供名称空间当前指向的内容,但是这种情况可能会改变,因此修改globals()的返回值不是一个好主意

列表也可以像(有限的用例)一样使用:

dataframes = []
for key in dict.keys():
    dataframes.append(dict[key])

这仍然是您的选择,以上两种方法都有一些局限性。