繁体   English   中英

熊猫在groupby上分组依据到列表列表

[英]Pandas group by on groupby to list of lists

给定一个结构如下的数据框:

rule_id | ordering | sequence_id
   1    |    0     |     12     
   1    |    1     |     13
   1    |    1     |     14
   2    |    0     |     1
   2    |    1     |     2
   2    |    2     |     12 

我需要将其转换为:

rule_id |  sequences
   1    |  [[12],[13,14]]
   2    |  [[1],[2],[12]]

这似乎很容易将groupby转换为groupby来列出操作-但是我不能使其在熊猫中工作。

df.groupby(['rule_id', 'ordering'])['sequence_id'].apply(list)

留下我

rule_id  ordering
1        0               [12]
         1            [13,14]
2        0                [1]
         1                [2]
         2               [12]

如何应用另一个groupBy操作将结果进一步合并到一个列表中?

通过MultiIndex的第一级使用另一个groupby

df.groupby(['rule_id', 'ordering'])['sequence_id'].apply(list).groupby(level=0).apply(list)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM