如何在pandas的循环中创建动态变量名

2024-04-18 07:50:20 发布

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

我有一个像

month  dest
1       a
1       bb
2       cc 
2       dd
3       ee
4       bb

我需要创建一个设置为4的另一个数据帧。我正在循环,希望在循环中指定dataframe dynamicall的名称,比如

^{pr2}$

它给了我

SyntaxError: can't assign to operator

如何创建dataframe的动态字符串变量/名称。在


Tags: to数据名称dataframecanddeedest
2条回答

我认为最好的方法是创建dict对象-参见How do I create a variable number of variables?

通过将^{}对象转换为dict,可以使用dictdict

d = dict(tuple(df.groupby('month')))
print (d)
{1:    month dest
0      1    a
1      1   bb, 2:    month dest
2      2   cc
3      2   dd, 3:    month dest
4      3   ee, 4:    month dest
5      4   bb}

print (d[1])
   month dest
0      1    a
1      1   bb

另一种解决方案:

^{2}$

您可以使用数据帧列表:

dataframe = []
dataframe.append(None)

group = org_dataframe.groupby('month')

for n,g in group:
    dataframe.append(g)

dataframe[1]

输出:

^{2}$

输出:

   month dest
2      2   cc
3      2   dd

相关问题 更多 >