0

I have the following dataframe called dfSocial:

  age     gender    impressions
0 13-17   female    234561
1 13-17   male      34574
2 25-34   female    120665
3 25-34   male      234560
4 35-44   female    5134
5 35-44   male      2405
6 45-54   female    423
7 45-54   male      324

Now I want to make a new dataframe that comes out like this:

  age     male      female
0 13-17   34574     234561
1 25-34   234560    120665
2 35-44   2405      5134
3 45-55   324       423

Can anybody help to get this transformation. I have tried with the following code:

        for gender in ["male", "female"]:
        dfSocialByGender = dfSocial[dfSocial['gender'].str.match(gender)]
        if not dfSocialByGender.empty:
            dfSocial[f'{gender}Performance'] = dfSocialByGender.groupby(["age"])['impressions'].sum()

However this get the values of 0, all help is appreciated! I have tried doing the code like this:

        for gender in ["male", "female"]:
          dfSocialByGender = dfSocial[dfSocial['gender'].str.match(gender)]
          if not dfSocialByGender.empty:
            dfSocial[f'{gender}Performance'] = dfSocialByGender.['impressions'].sum()

However this get a total sum of the impressions for male and female and not dividing by age group.

0 Answers0