I've seen a few variations on the theme of exploding a column/series into multiple columns of a Pandas dataframe, but I've been trying to do something and not really succeeding with the existing approaches.
Given a DataFrame like so:
    key       val
id
2   foo   oranges
2   bar   bananas
2   baz    apples
3   foo    grapes
3   bar     kiwis
I want to convert the items in the key series into columns, with the val values serving as the values, like so:
        foo        bar        baz
id
2   oranges    bananas     apples
3    grapes      kiwis        NaN
I feel like this is something that should be relatively straightforward, but I've been bashing my head against this for a few hours now with increasing levels of convolution, and no success.
 
     
    