分组
# 读取tsv文件,分隔符为\t
df = pd.read_csv('../data/gapminder.tsv',sep='\t')
print(df)
groupby('以xx字段分组')
以年份分组,查看所有国家年龄的平均值:
df.groupby('year')['lifeExp'].mean()
大洲为亚洲,以年份分组,查看年龄的平均值:
df[df['continent'] == 'Asia'].groupby('year')['lifeExp'].mean()
分组聚合查询
分组时传入列表,以多个字段分组;查询时传入列表,查询多个列
以年份和大洲分组(传入列表),查看年龄和GDP(聚合传入列表)的平均值:
df.groupby(['year','continent'])[['lifeExp','gdpPercap']].mean()
这种聚合分组查询分组的两个字段存在索引层级关系,如果要去掉层级关系就要重置索引:
计算频数
计算每个大洲统计了多少个国家:
nunique()方法
df.groupby('continent')['country'].nunique()