熊猫:GroupBy到DataFrame

Sum*_*ron 1 python pandas pandas-groupby

关于groupby到dataframe有一个非常受欢迎的SO问题,请看这里.不幸的是,我不认为这个特定的用例是最有用的.

假设您有一个展平形式的分层数据集:

例如

     key    val 
0    'a'    2
1    'a'    1
2    'b'    3
3    'b'    4
Run Code Online (Sandbox Code Playgroud)

我想做的是将该数据帧转换为此结构

    'a'  'b'
0    2    3
1    1    4
Run Code Online (Sandbox Code Playgroud)

我觉得这会很简单

pd.DataFrame(df.groupby('key').groups)
Run Code Online (Sandbox Code Playgroud)

但事实并非如此.

那么我该如何进行这种转变呢?

WeN*_*Ben 5

df.assign(index=df.groupby('key').cumcount()).pivot('index','key','val')
Out[369]: 
key    'a'  'b'
index          
0        2    3
1        1    4
Run Code Online (Sandbox Code Playgroud)

  • 温家宝每个字母都带着相同的,确切的字样来到这里 (2认同)