如何聚合基于两列的数据?
How to aggregate data based on two columns?
我有 table 如上所示,其中有两列(性别和年份)。我想将其转换为以下格式,如下所示。任何有关如何执行此操作的帮助将不胜感激。
你可以这样做:
df = pd.DataFrame({'Gender': ['m', 'm', 'm', 'm', 'f'],
'year': [2011, 2013, 2011, 2011, 2012]})
pd.crosstab(df['year'], df['Gender'])
Gender f m
year
2011 0 3
2012 1 0
2013 0 1
要反转性别列,它将是:
pd.crosstab(df['year'], df['Gender'])[['m', 'f']]
我有 table 如上所示,其中有两列(性别和年份)。我想将其转换为以下格式,如下所示。任何有关如何执行此操作的帮助将不胜感激。
你可以这样做:
df = pd.DataFrame({'Gender': ['m', 'm', 'm', 'm', 'f'],
'year': [2011, 2013, 2011, 2011, 2012]})
pd.crosstab(df['year'], df['Gender'])
Gender f m
year
2011 0 3
2012 1 0
2013 0 1
要反转性别列,它将是:
pd.crosstab(df['year'], df['Gender'])[['m', 'f']]