如何在循环中命名数据帧的子集

How to name subsets of a dataframe inside a loop

我在命名我在循环中创建的子集时遇到问题。我想给每个条件的前五个字母(或什至只是迭代编号)作为名称,但我还不知道如何做。

这是我的代码

list_mun=list(ensud21.NOM_MUN.unique())
for mun in list_mun:
    name=ensud21[ensud21['NOM_MUN']== mun]

list_mun 是一个列表,其中包含我的数据框的一列可以采用的唯一值。在 for 循环中,我在我想要之前解释的地方写了名字。我无法为每个数据框指定不同的名称。谢谢!

您不应该尝试动态设置变量名。使用容器,字典在这里是完美的:

list_mun=list(ensud21.NOM_MUN.unique())

out_dic = {}
for mun in list_mun:
    # here we set "mun" as key
    out_dict[mun] = ensud21[ensud21['NOM_MUN']== mun]

然后子集:

out_dic[the_mun_you_want]