我有以下大熊猫系列:
import pandas as pd
import numpy as np
data= pd.Series(np.random.randn(10), index =[['a','a','a','b','b','b','c','c','d','d'],[1,2,3,1,2,3,1,2,2,3]])
哪个输出:
a 1 -1.079086
2 0.017873
3 0.528414
b 1 1.462864
2 0.314324
3 1.194004
c 1 -0.723474
2 2.431482
d 2 1.646265
3 0.112295
dtype: float64
我想获得一个序列,其中包含由第二级索引组成的列表作为元素。那就是我想获得一些形式的东西:
[[1,2,3], [1,2,3], [1,2], [2,3]]
采用正确/有效的方式是什么?
答案 0 :(得分:3)
试试这个:
In [58]: data.reset_index().groupby('level_0')['level_1'].apply(list).values.tolist()
Out[58]: [[1, 2, 3], [1, 2, 3], [1, 2], [2, 3]]