Python预测2020高考分数和录取情况


Posted in Python onJuly 08, 2020

“迟到”了一个月的高考终于要来了。

Python预测2020高考分数和录取情况

正好我得到了一份山东新高考模拟考的成绩和山东考试院公布的一分一段表,以及过去三年的普通高考本科普通批首次志愿录取情况统计。2020年是山东新高考改革的元年,全新的录取模式以及选考科目要求都给考生带来了非常大的挑战。

我正好就本次山东模拟考的成绩进行深入数据分析,用python可视化带大家模拟一下2020高考分数和录取情况。

(代码较长,故只展示部分,完整数据+源码下载见文末)

不同考生的成绩分布图

首先对山东新高考模拟考的成绩进行总体描述:

fig = make_subplots(rows=4,cols=2, #4行2列
          subplot_titles=('所有考生',"物理", "历史", "化学", "地理", "生物", "政治"),
          specs=[[{'colspan': 2},None],[{},{}],[{},{}],[{},{}],
             ]) #specs参数定义了如何分配视图区间, 本案例中的“specs=[[{}, {}],[{'colspan': 2},None]]”表示其他行的两个子图平均分配区间, 第一行的第一个子图占据 2列的区间, 并且不存在第二个子图

fig.add_trace(go.Scatter(
  x = raw_data['分数段'], 
  y = raw_data['所有考生本段人数'],
  fill = 'tozeroy',
  mode = 'lines',  
  marker = dict(
    size = 8,
    color =  'rgb(88, 182, 192)'
   )),
  row=1, col=1,
  )

#保存图片
img_file = os.path.join(img_dir, 'img1.svg')
fig.write_image(img_file, scale=1)
fig.show()

Python预测2020高考分数和录取情况

选考物理、化学、生物的学生的成绩呈正态分布,大多数学生的成绩集中于中间,成绩两端学生的人数分布较少。而选考文科类(历史、地理、政治)学科的学生的成绩成偏态分布,一段线以下的人数占比较大,尤其历史和地理学科上这种趋势更加明显。

本科上线率

Python预测2020高考分数和录取情况

通过计算各科所有选择的人中有多少人的总分在一段线以上,发现,选考物理的学生的上线率最高,达到了67%,而选考历史的学生的上线率较低,只有37%。

选考科目情况

#所有考生的科目选择情况
sum_people = raw_data['所有考生累计人数'].iloc[-1]
subj_select = []
subj_name = ['物理','化学','生物','历史','地理','政治']
subj_select_percent = pd.DataFrame(index = subj_name,columns=['比例'])
for i in subj_name:
  singel_subj = raw_data['选考'+i+'累计人数'].iloc[-1]
  singel_percent = round(singel_subj/sum_people,4)*100
  subj_select.append(singel_percent)
  subj_select_percent.loc[i, '比例'] = singel_percent

在此次模拟考中,分数在150分以上的考生共有489567人,其中选考地理的人数最多,选考比率为63.6%,选考政治的人数最少,选考比率只有34.31%,而备受大家关注的选考物理的比率为41.59%。

Python预测2020高考分数和录取情况

需要注意的是,山东2020年高考的正式选科时间是5.25-29,而模拟考的时间在1月,因此上述数据只能作为学生选科的重要参考。

学霸们的选科组合

根据此次公布的一分一段表以及高考志愿辅导专家的分析,大体推测了全省前100名考生的选科情况。

Python预测2020高考分数和录取情况

果然,学霸们还是较忠于传统的理科组合(物化生),有89%的人选择了该组合,而传统的文科组合(史地政)没有人选择。或许因为,理科受题目的难度影响较大,当题目较简单时,考生更容易考出高分,而文科更多开放题,考取的高分的概率更小。这也间接导致了,考生倾向选择纯理科或者至少1门理科。

双一流高校录取情况分析

Python预测2020高考分数和录取情况

我们统计了近三年双一流高校在山东的理工类专业录取最低分,位次靠前的依次是北京大学,复旦大学,上海交通大学,浙江大学,中国科学技术大学。

Python预测2020高考分数和录取情况

我们统计了近三年双一流高校在山东的文史类专业录取最低分,位次靠前的依次是清华大学,北京大学,上海交通大学,复旦大学,中国人民大学。

双一流高校专业录取情况分析

#南丁格尔图
pie_Nightingale(sci_top10['专业'].values.tolist(),
        sci_top10['频数'].values.tolist(),
        '录取最低分排名\n前10的理工类专业', 
        '理科专业top10.html')

Python预测2020高考分数和录取情况

我们统计了双一流高校录取最低分所对应的专业频次,结果发现,理工类专业中工科实验班的出现频次最高,双一流高校中有25个学校的录取最低分所对应的专业是工科实验班。

Python预测2020高考分数和录取情况

我们同样统计了双一流高录取最低分所对应的文史类专业的频次,结果发现,文史类专业中日语出现的频次最高,双一流高校中有25个学校的录取最低分对应的专业是日语。

高考加油

2020年的寒冬,让所有人的步伐变得蹒跚

1月,教育部下发学生延期开学通知;

2月,关于停课的消息层出不穷;

3月中旬,全国陆续开始实行网络授课;

3月底,正式确认2020年高考将延期一个月举行;

……

在一则又一则“刷新历史”的新闻中,高考生无疑成为了一个备受关注的群体——除了需要面临的学习压力,还要时刻保持着安全距离进行学习和生活……对他们来说,无论疫情还是高考,都成为了一场重大的考验。[1]

Python预测2020高考分数和录取情况

祝愿2020高考学子都能考出自己的最佳成绩!

到此这篇关于Python预测2020高考分数和录取情况的文章就介绍到这了,更多相关Python预测2020高考内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python正则表达式match和search用法实例
Mar 26 Python
使用Python生成url短链接的方法
May 04 Python
利用ctypes提高Python的执行速度
Sep 09 Python
python中nan与inf转为特定数字方法示例
May 11 Python
Python 使用with上下文实现计时功能
Mar 09 Python
详解基于django实现的webssh简单例子
Jul 17 Python
150行Python代码实现带界面的数独游戏
Apr 04 Python
不到20行实现Python代码即可制作精美证件照
Apr 24 Python
keras.layer.input()用法说明
Jun 16 Python
在Python中字典按值排序的实现方法
Nov 12 Python
Python调用SMTP服务自动发送Email的实现步骤
Feb 07 Python
pandas时间序列之pd.to_datetime()的实现
Jun 16 Python
Python venv虚拟环境配置过程解析
Jul 08 #Python
Python如何实现自带HTTP文件传输服务
Jul 08 #Python
Python第三方包PrettyTable安装及用法解析
Jul 08 #Python
简单了解如何封装自己的Python包
Jul 08 #Python
python如何实现读取并显示图片(不需要图形界面)
Jul 08 #Python
基于python实现可视化生成二维码工具
Jul 08 #Python
如何使用Cython对python代码进行加密
Jul 08 #Python
You might like
thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决
2016/04/27 PHP
PHP实现适用于自定义的验证码类
2016/06/15 PHP
PHP实时统计中文字数和区别
2019/02/28 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
代码生成器 document.write()
2007/04/15 Javascript
javascript制作sql转换为stringBuffer的小工具
2015/04/03 Javascript
vue2.0+webpack环境的构造过程
2016/11/08 Javascript
js 动态生成json对象、时时更新json对象的方法
2016/12/02 Javascript
bootstrap侧边栏圆点导航
2017/01/11 Javascript
fckeditor部署到weblogic出现xml无法读取及样式不能显示问题的解决方法
2017/03/24 Javascript
Bootstrap模态框插入视频的实现代码
2017/06/25 Javascript
深入浅出webpack之externals的使用
2017/12/04 Javascript
详解ES6 Promise对象then方法链式调用
2018/10/20 Javascript
vue实现压缩图片预览并上传功能(promise封装)
2019/01/10 Javascript
vue项目实现设置根据路由高亮对应的菜单项操作
2020/08/06 Javascript
Python发送form-data请求及拼接form-data内容的方法
2016/03/05 Python
python实现二维码扫码自动登录淘宝
2016/12/27 Python
Python跨文件全局变量的实现方法示例
2017/12/10 Python
利用scrapy将爬到的数据保存到mysql(防止重复)
2018/03/31 Python
python实现爬取图书封面
2018/07/05 Python
解决pandas .to_excel不覆盖已有sheet的问题
2018/12/10 Python
python批量修改文件夹及其子文件夹下的文件内容
2019/03/15 Python
python操作kafka实践的示例代码
2019/06/19 Python
python 逆向爬虫正确调用 JAR 加密逻辑
2021/01/12 Python
CSS3提交意见输入框样式代码
2014/10/30 HTML / CSS
M.M.LaFleur官网:美国职业女装品牌
2020/10/27 全球购物
室内设计专业个人的自我评价
2013/12/18 职场文书
大学生职业生涯规划书模版
2013/12/30 职场文书
三项教育活动实施方案
2014/03/30 职场文书
地下停车场租赁协议范本
2014/10/07 职场文书
小学生作文批改评语
2014/12/25 职场文书
学雷锋广播稿大全
2015/08/19 职场文书
2016年感恩母亲节活动总结
2016/04/01 职场文书
Vue Element UI自定义描述列表组件
2021/05/18 Vue.js
python字典的元素访问实例详解
2021/07/21 Python
Java获取e.printStackTrace()打印的信息方式
2021/08/07 Java/Android