将Pandas数据框拆分为子数据框(而不是数据框列表)

时间:2019-05-31 13:11:42

标签: python pandas

我正在尝试将一个数据框拆分为尽可能多的不同数据框,并根据要拆分的信息设置新数据框的名称。

EX:

将此数据框称为“ df”

Name    ID    Number    Code    Name2
123     cp1    500      ABC      456
123     cp1    501      DEF      456

我正在尝试根据“数字”将此数据框拆分为多个块,然后相应地重命名这些新数据框。

结果如下:

df500:
Name    ID    Number    Code    Name2
123     cp1    500      ABC      456

df501:
Name    ID    Number    Code    Name2
123     cp1    501      DEF      456

大熊猫允许这样做吗?

1 个答案:

答案 0 :(得分:6)

通过分组创建字典:

d={'df_{}'.format(i):g for i,g in df.groupby('Number')}

{'df_500':    Name   ID  Number Code  Name2
 0   123  cp1     500  ABC  456.0, 'df_501':    Name   ID  Number Code  Name2
 1   123  cp1     501  DEF    NaN}

然后您可以像这样调用字典的键:

print(d['df_500'])

   Name   ID  Number Code  Name2
0   123  cp1     500  ABC  456.0