给定一个结构如下的数据框:
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 来进行列表操作 - 但我无法让它在 pandas 中工作。
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
将结果进一步连接到一个列表中的操作?
使用另一个groupby
按第一级MultiIndex
:
df.groupby(['rule_id', 'ordering'])['sequence_id'].apply(list).groupby(level=0).apply(list)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)