【发布时间】:2018-11-30 15:56:24
【问题描述】:
考虑一下,数据框d:
d = pd.DataFrame({'a': [0, 2, 1, 1, 1, 1, 1],
'b': [2, 1, 0, 1, 0, 0, 2],
'c': [1, 0, 2, 1, 0, 2, 2]}
> a b c
0 0 2 1
1 2 1 0
2 1 0 2
3 1 1 1
4 1 0 0
5 1 0 2
6 1 2 2
我想将它按列 a 拆分成这样的字典:
{0: a b c
0 0 2 1,
1: a b c
2 1 0 2
3 1 1 1
4 1 0 0
5 1 0 2
6 1 2 2,
2: a b c
1 2 1 0}
我使用pandas.groupby 找到的解决方案是:
{k: table for k, table in d.groupby("a")}
其他解决方案是什么?
【问题讨论】:
-
我认为您拥有的是优雅的。为什么不满意?
标签: python python-3.x pandas dictionary pandas-groupby