这个问题在这里已有答案:
我确定之前已经问过这个问题,如果重复,请对不起。假设我有以下数据帧:
df = pd.DataFrame({'key': ['A', 'B', 'C', 'A', 'B', 'C'],
'data': range(6)}, columns=['key', 'data'])
>>
key data
0 A 0
1 B 1
2 C 2
3 A 3
4 B 4
5 C 5
在'key'上做一个groupby,df.groupby('key').sum()
我知道我们可以做以下事情:
>>
data
key
A 3
B 5
C 7
在阵列中获取所有“拆分”数据的最简单方法是什么?:
>>
data
key
A [0, 3]
B [1, 4]
C [2, 5]
我不一定只用一个键进行分组,但也有几个其他索引(例如'year'和'month')这就是为什么我想使用groupby函数,但保留所有分组值的原因。阵列。
你可以使用apply(list)
:
print(df.groupby('key').data.apply(list).reset_index())
key data
0 A [0, 3]
1 B [1, 4]
2 C [2, 5]