pro*_*ath 12 python dataframe pandas
给定的数据框结构如下:
rule_id | ordering | sequence_id
1 | 0 | 12
1 | 1 | 13
1 | 1 | 14
2 | 0 | 1
2 | 1 | 2
2 | 2 | 12
Run Code Online (Sandbox Code Playgroud)
我需要将其转换为:
rule_id | sequences
1 | [[12],[13,14]]
2 | [[1],[2],[12]]
Run Code Online (Sandbox Code Playgroud)
这似乎很容易组成groupby到列表操作 - 但我不能让它在熊猫中工作.
df.groupby(['rule_id', 'ordering'])['sequence_id'].apply(list)
Run Code Online (Sandbox Code Playgroud)
离开我
rule_id ordering
1 0 [12]
1 [13,14]
2 0 [1]
1 [2]
2 [12]
Run Code Online (Sandbox Code Playgroud)
如何应用另一个groupBy操作将结果进一步连接到一个列表中?
groupby在第一级使用另一个MultiIndex:
df.groupby(['rule_id', 'ordering'])['sequence_id'].apply(list).groupby(level=0).apply(list)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1983 次 |
| 最近记录: |