温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python中北京高考分数线统计的示例分析

发布时间:2021-12-28 17:10:02 来源:亿速云 阅读:410 作者:小新 栏目:开发技术

小编给大家分享一下Python中北京高考分数线统计的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

前言:

为了帮助广大考生和家长了解高考历年的录取情况,很多网站都汇总了各省市的录取控制分数线,为广大考生填报志愿提供参考。因受多种因素影响,每年的分数线或多或少会有一些变动。采集北京2006-2019年的信息。使用Python的Pandas库完成以下数据分析。

1.1 数据爬取

包含三部分内容:从哪里爬取,如何爬取,爬取的结果

代码:

import pandas as pd

import numpy as np

data=pd.read_excel("scores.xlsx",header=1)

print(data)

运行结果:

Python中北京高考分数线统计的示例分析

分析:我是读取的本地的数据文件进行的数据分析。

有兴趣的话可以从网站上面下载相关的数据或者是自己使用爬虫爬取相关的数据源。进行数据分析

这个数据的分析部分我主要是采用的是Pandas numpy做数据的预处理。

matplotlib进行数据的可视化展示。

1.2 最高分最低分统计

mindata= data.groupby(['文科','理科'], as_index=False).min(axis=1) 

maxdata= data.groupby(['文科','理科'], as_index=False).max(axis=2) 

print(data.min())

print(data.max())

Python中北京高考分数线统计的示例分析

进行数据的处理,最高分最低分统计,因为有两个不同的年份的成绩,并且分了文科和理科所以就有2个文科2个理科

  • 我们使用groupby按照文理科进行分组

  • 然后使用max()min()求最大值和最小值‘

  • 经过分析处理可以看到打印出来的最大值和最小值

1.3 一本二本理科差值统计

代码:

s1math=data["一本分数线","理科"]
print(s1math)
print(s1math[0]-s1math[2])

s1c=data["一本分数线","文科"]
print(s1c[0]-s1c[2])
s2math=data["二本分数线","理科"]
print(s2math[0]-s2math[2])
s2c=data["二本分数线","文科"]
print(s2math[0]-s2math[2])

运行结果:

Python中北京高考分数线统计的示例分析

注意:

首先我们取出相应的文理科一本以及二本的成绩,然后再进行相关的极差的计算就是使用前一个数减去后面的一个数就OK。

print(s1math[0]-s1math[2])

1.4 2006—2019年近14年每科分数线的平均值统计

代码:

# 2006—2019年近14年每科分数线的平均值统计

data1=data[data['Unnamed: 0'].between(2006, 2014, inclusive=True)].groupby(['Unnamed: 0']).mean()

print(data1)

运行结果:

Python中北京高考分数线统计的示例分析

首先是进行数据的提取,然后进行平均值的求取。在这里我算的麻烦了,因为本来就是一个年份对应的是一个成绩。不是一对多的关系,所以下面的方法要更好一些。

也可以使用mean方法进行相关的平均值求取。

Python中北京高考分数线统计的示例分析

是一个成绩。不是一对多的关系,所以下面的方法要更好一些。

也可以使用mean方法进行相关的平均值求取。

以上是“Python中北京高考分数线统计的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI