知行编程网知行编程网  2022-02-22 08:00 知行编程网 隐藏边栏 |   抢沙发  34 
文章评分 0 次,平均分 0.0
<span style="color: #353535; font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, 'PingFang SC', Cambria, Cochin, Georgia, Times, 'Times New Roman', serif; letter-spacing: 0.8px; word-spacing: 0.8px;">最近,诺贝奖得主引起了大家的热议,我用数据分析了一下历年的诺贝尔奖得主情况,分享给大家~</span>

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?注:图片取自B站

诺贝尔奖(瑞典语:Nobel priset,英语:Nobel Prize):是指根据诺贝尔1895年的遗嘱而设立的五个奖项,包括:物理学奖化学奖和平奖生理学医学奖文学奖旨在表彰在物理学、化学、和平、生理学或医学以及文学上对社会做出卓越贡献,或做出杰出研究、发明以及实验的人士。以及瑞典中央银行1968年设立的诺贝尔经济学奖,用于表彰在经济学领域杰出贡献的人。 诺贝尔奖历经百年,时至今日,诺贝尔奖一直都被视为各领域最重要的荣誉之一。

历年诺贝尔奖得主统计分析

 

    一、导入数据

    二、获奖人性别分布统计

    三、各国获奖人数统计

    四、各领域获奖人数比例统计

    五、各领域获奖人数统计-国家排名

        1. 生理学奖获奖人数top10国家

        2. 物理学奖获奖人数top10国家

        3. 化学奖获奖人数top10国家

        4. 文学奖获奖人数top10国家

        5. 经济学奖获奖人数top10国家

        6. 和平奖获奖人数top10国家

    六、获奖者平均年龄统计

一、导入数据

 pd

data_date   = pd.read_csv('nobel_prizes_by_date.csv',encoding = 'ISO-8859-1')
data_winner = pd.read_csv('nobel_prize_by_winner.csv',encoding = 'ISO-8859-1')
data_winner.head()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

二、获奖人性别分布统计

data.id.nunique()

输出:901

 my_autopct

# 长8英寸 宽6英寸,该窗口的分辨率为80
plt.figure(figsize=(8,6), dpi= 80)

labels = '男','女','组织'
explode = (0,0,0)                              #将某一块分割出来,值越大分割出的间隙越大
colors = ['yellowgreen','lightskyblue','yellow']

patches,text1,text2 = plt.pie([male,female,org],
explode=explode,
labels=labels,
colors=colors,
labeldistance = 1.1,                       #标签距圆心半径倍距离
autopct = make_autopct([male,female,org]),
shadow = True,                             #阴影设置
startangle =30,                            #逆时针起始角度设置
pctdistance = 0.7)

plt.title('获奖者男女比例',fontsize=19)
plt.legend()
plt.show()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

三、各国获奖人数统计

))

#添加数据,设置饼图半径
pie.add('',[list(z) for z in zip(data_cou.head(15).index.tolist(), data_cou.head(15).values.tolist())],
radius=['40%','65%'],
rosetype='radius'
)
#设置全局配置项
pie.set_global_opts(title_opts=opts.TitleOpts(title=''),
legend_opts=opts.LegendOpts(is_show=True))

#玫瑰图展示
pie.render_notebook()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

四、各领域获奖人数比例统计

)

def make_autopct(values):
def my_autopct(pct):
total = sum(values)
val = int(round(pct*total/100.0))
# 同时显示数值和占比的饼图
return '{p:.2f}%  ({v:d}人)'.format(p=pct,v=val)
return my_autopct

patches,l_text,p_text = plt.pie(data_cate.values,
labeldistance = 1.1,
labels=data_cate.index,
startangle = 60,
pctdistance = 0.7,
autopct=make_autopct(data_cate.values))

for t in l_text:
t.set_size(12)
for t in p_text:
t.set_size(12)

plt.title('各领域获奖人数',fontsize=15)
plt.legend(loc=2)
plt.show()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

五、各领域获奖人数统计-国家排名

1. 生理学奖获奖人数top10国家

))

#添加数据,设置饼图半径
pie.add('',[list(z) for z in zip(data_med.head(10).index.tolist(), data_med.head(10).values.tolist())],
radius=['30%','60%'],
rosetype='radius'
)
#设置全局配置项
pie.set_global_opts(title_opts=opts.TitleOpts(title=''),
legend_opts=opts.LegendOpts(is_show=True))

#玫瑰图展示
pie.render_notebook()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

2. 物理学奖获奖人数top10国家

))

#添加数据,设置饼图半径
pie.add('',[list(z) for z in zip(data_phy.head(10).index.tolist(), data_phy.head(10).values.tolist())],
radius=['30%','60%'],
rosetype='radius'
)
#设置全局配置项
pie.set_global_opts(title_opts=opts.TitleOpts(title=''),
legend_opts=opts.LegendOpts(is_show=True))

#玫瑰图展示
pie.render_notebook()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

3. 化学奖获奖人数top10国家

))

#添加数据,设置饼图半径
pie.add('',[list(z) for z in zip(data_che.head(10).index.tolist(), data_che.head(10).values.tolist())],
radius=['30%','60%'],
rosetype='radius'
)
#设置全局配置项
pie.set_global_opts(title_opts=opts.TitleOpts(title=''),
legend_opts=opts.LegendOpts(is_show=True))

#玫瑰图展示
pie.render_notebook()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

4. 文学奖获奖人数top10国家

))

#添加数据,设置饼图半径
pie.add('',[list(z) for z in zip(data_lit.head(10).index.tolist(), data_lit.head(10).values.tolist())],
radius=['30%','60%'],
rosetype='radius'
)
#设置全局配置项
pie.set_global_opts(title_opts=opts.TitleOpts(title=''),
legend_opts=opts.LegendOpts(is_show=True))

#玫瑰图展示
pie.render_notebook()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

5. 经济学奖获奖人数top10国家

))

#添加数据,设置饼图半径
pie.add('',[list(z) for z in zip(data_eco.head(10).index.tolist(), data_eco.head(10).values.tolist())],
radius=['45%','75%'],
rosetype='radius'
)
#设置全局配置项
pie.set_global_opts(title_opts=opts.TitleOpts(title=''),
legend_opts=opts.LegendOpts(is_show=True))

#玫瑰图展示
pie.render_notebook()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

6. 和平奖获奖人数top10国家

))

#添加数据,设置饼图半径
pie.add('',[list(z) for z in zip(data_pea.head(10).index.tolist(), data_pea.head(10).values.tolist())],
radius=['30%','60%'],
rosetype='radius'
)
#设置全局配置项
pie.set_global_opts(title_opts=opts.TitleOpts(title=''),
legend_opts=opts.LegendOpts(is_show=True))

#玫瑰图展示
pie.render_notebook()

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

六、获奖者平均年龄统计

))

plt.title('各领域获奖者获奖年龄分布',fontsize=17)
plt.ylabel('获奖年龄',fontsize=14)
plt.xlabel('获奖领域',fontsize=14)
plt.xticks(rotation=45,fontsize=14)

plt.legend(loc=9,bbox_to_anchor=(0.86,0.96))

数据分析告诉你,历年的诺贝尔奖都被哪些人拿走了?

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享