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.