163Python数据分析师课程考核项目04

163Python数据分析师课程考核项目04

多场景下的图表可视化表达

excel数据概览
运动员信息

在这里插入图片描述

运动员CP热度

在这里插入图片描述

题目1

2016年奥运运动员数据,数据格式为xlsx,分3个sheet
1、分男女分别分析运动员的身高分布,并制作图表,数据为“奥运运动员数据.xlsx,sheet → 运动员信息”
要求:
① 制作分布密度图② 计算出男女平均身高,并绘制辅助线表示
提示:
① 可视化制图方法 → sns.distplot()② 辅助线制图方法 → plt.axvline()③ 分男女分别筛选数据并制作图表④ 不需要创建函数

题目1思路

1. 创建工作路径,查看读取数据。
2. 提取身高信息,提取性别和身高,去除空值。
3. 根据男女分类,reset_index()重新设置标签
4. 计算平均值
5. 绘制分布密度图,创建绘图区域,设置图表大小,绘制平均身高辅助线。

题目1 代码
# 1. 创建工作路径,查看读取数据。
import os
os.chdir('C:\\Users\\WQQ\\Desktop\\163data\\项目题目和项目答案\\考核项目04_多场景下的图表可视化表达\\')
df=pd.read_excel('奥运运动员数据.xlsx',sheetname='运动员信息')
df_len=len(df)
df_col=df.columns.tolist()
# 2. 提取身高信息,提取性别和身高,去除空值。
data_height=pd.DataFrame(df['gender'],df['height'])
data_height.dropna(inplace=True)
# 3. 根据男女分类,reset_index()重新设置标签
data_male=data_height.groupby(['gender']).get_group('男').reset_index()
data_famale=data_height.groupby(['gender']).get_group('女').reset_index()
# 4. 计算平均值
male_mean=data_male['height'].mean()
famale_mean=data_famale['height'].mean()
print('男性运动员平均身高:%i,\n女性运动员平均身高:%i' 
      %(male_mean,famale_mean))
5. 绘制分布密度图,创建绘图区域,设置图表大小,绘制平均身高辅助线。
plt.figure(figsize=(6,4))
sns.distplot(data_male['height'],hist=False,kde=True,rug=True,color='blue',axlabel='运动员身高',label='男性运动员身高分布')
sns.distplot(data_famale['height'],hist=False,kde=True,rug=True,color='red',axlabel='运动员身高',abel='女性运动员身高分布')
plt.grid()
plt.axvline(male_mean,color='blue',linestyle=':')
plt.text(male_mean+2,0.005,'男性运动员身高平均值:%i' %male_mean,color='blue')
plt.axvline(famale_mean,color=
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值