访问动态创建的数据帧

时间:2019-01-31 14:13:28

标签: python pandas dataframe dynamic

Hello Python社区,

我的代码创建有问题。

我编写了一个代码,该代码在for循环中动态创建数据帧。问题是我不知道如何访问它们。

这是代码的一部分

list = ['Group 1', 'Group 2', 'Group 3']
for i in list:
    exec('df{} = pd.DataFrame()'.format(i))
for i in list:
    print(df+i)

数据帧已创建,但我无法访问它们。

有人可以帮我吗?

提前谢谢

1 个答案:

答案 0 :(得分:2)

我不确定您的数据是如何存储/访问的,但是您可以创建一个字典来将列表项与每个数据框配对,如下所示:

list_ = ['Group 1', 'Group 2', 'Group 3']
dataframe_dict = {} 

for i in list_:
    data = np.random.rand(3,3) #create data for dataframe here 
    dataframe_dict[i] = pd.DataFrame(data, columns=["your_column_one", "two","etc"])

然后可以通过调用其关联的组名作为字典的键来检索每个数据框,如下所示:

for key in dataframe_dict.keys():
    print(key)
    print(dataframe_dict[key])