Home > Back-end >  How to transform my grouped DataFrame column type rows into multiple columns
How to transform my grouped DataFrame column type rows into multiple columns

Time:10-15

I have the following DataFrame:

Id         Category        Amount
900000007  Schuur          8.0
900000009  Garage          24.0
           Dakkapel        5.0
900000015  Schuur          8.0
           Garage          20.0
           Dakkapel        5.0
900000019  Schuur          8.0
           Garage          18.0

So it's a list of Id's, a variable list of categories and an amount for each category that exists for that Id.

Now I want it to become like this:

Id         Schuur       Garage    Dakkapel
900000007  8.0          NaN       Nan
900000009  Nan          24.0      5.0
900000015  8.0          20.0      5.0
900000019  8.0          18.0      Nan

So the categories become the name of the columns, with one row for each Id and the amount filled in for each category. Please help me find the right function for this, thanks!

CodePudding user response:

If first 2 columns are levels of MultiIndex use Series.unstack with select column Amount:

df1 = df['Amount'].unstack()
  • Related