山东新高考等级赋分如何快速转换

2023-12-14 12:59

本文主要是介绍山东新高考等级赋分如何快速转换,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目前,山东新高考成绩采用3+3模式,即语数外使用原始分,其余三门选课参照正态分布原则,采用等级赋分制进行计算,将三门科总成绩与语数外三门课相加形成学生最后的总成绩。学校在进行等级赋分转换时需要充分考虑以下几个方面:
1:总分相同时的排名问题。
2:选课走班生,其走班科目的成绩应放在其教学班进行对比,而非行政班对比。
目前很多学校或软件,并未将选课走班生单独拿出来,而是一并归入采用行政班,这虽然在总成绩上没有影响,但对于观察班级整体成绩则会出现数据失真问题。

那么我们如何在全年级对某科进行等级赋分呢?下面以山东省选课等级赋分规则为例,对物理这一科目在算法上进行讲解。其余科目一样

注:举例数据 名字全是系统生成的化名,但成绩和班级都是真实的
一:山东省等级赋分规则
在这里插入图片描述

图为山东省等级赋分规则
在这里插入图片描述
该校共有1158名学生参加物理考试。计算步骤如下

1:不占位排序算法

先对学生成绩进行排序,排序规则为成绩相同,名次相同,如 A B C D四位学生 成绩分别为 98 87 87 34 名次则为 1 2 2 4即不占位排序。使用mysql数据则很容易完成这个排序工作

select  studentName,score  ,RANK() OVER(order by  score DESC ) ranks  from exam  where 科目=物理

2:确定等级区间

如第一区间是0-3%。那么第一区间 最高名次为 1158 * 0.03= 34.74,这里采用向下取整原则,Math.floor(34.74),第34名就是3%的最高名次。这里,很多学校和软件在这里四舍五入了,这样有可能会把第二区间的第一名纳入到第一区间,造成计算错误。
如图:
在这里插入图片描述

实际上这里的前3%的名次最高到25名,共计34个学生。这样我们就可以获取该区间原始分最高分和原始分最低分为98-84分。计算完后,按赋分等级公式计算:

(原始成绩区间最高分-等级区间最低分)/ (考生原始分-原始成绩区间最低分)

(等级区间最高分-转换后的等级分) / (转换后的等级分- 赋分区间最低分)
简化公式为:为了java开发方便计算可将公式转换转换为
1:原始最高分-原始分=a
2:区间最高分- 原始分=b
3: a/b=y(注意Y不是原始分) 带入公式得:(区间最高+y * 区间最低 ) / 1+y = 最终赋分

在这里插入图片描述
(对上面的代码我必须吐槽,全是坑啊!!!!,为了怕算错,分开一步一步的写,愣是把一数学硕士给写晕)

如:17班的肖泽强 物理87分, 在前3%内 首先确认其等级为A , 经过等级赋分计算:
在这里插入图片描述
肖泽强最终物理为93分。
这里得93分 是 显示成绩,数据库中保留的则是92.9285分。为什么要保留4为小数呢?
1:是后面还需要进行线性拟合等运算,以预测学生的成绩和 班级 科目的增量运算,这需要精确的数值。
2:是计算总排名。
实际上,很多学生科目总分相同,但实际高考中存在同名次的情况几乎不会发生,我们也是模拟了真正高考的算法,小数点精确到了4位数。这也就是我们为什么看到有的学生总分相同,但名次却不同的原因。那么真的遇到相同总分、相同名次的情况怎么办呢?实际的算法是先看语数外总分谁高谁就排到在前面,再看综合分,这样如果还是相同,那就名次相同。

班级排名

班级排名很麻烦,因为必须考虑到这个学生是否走班,如果走班,该生的成绩不能在本行政班排名。

区间统计

完成赋分后,对区间统计就简单多了
在这里插入图片描述
这样我们可以通过数据库完成区间统计,效果如下:

在这里插入图片描述

就写这么多吧,这几天又在搞增量算法了,在工作量和难度上,这两根本不是一个等级,程序员真特么累!
希望天下老师没这么累,以前我也是一名教师,知道老师们也很辛苦,欢迎使用这款软件,希望能够帮助各位老师们从繁琐的工作中解脱出来,有任何的建议,敬请下面留言

测试地址
http://117.50.162.64:8082/
可以注册,也可以使用测试账号:xm123 密码 :123456

这篇关于山东新高考等级赋分如何快速转换的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/492611

相关文章

使用Python开发Markdown兼容公式格式转换工具

《使用Python开发Markdown兼容公式格式转换工具》在技术写作中我们经常遇到公式格式问题,例如MathML无法显示,LaTeX格式错乱等,所以本文我们将使用Python开发Markdown兼容... 目录一、工具背景二、环境配置(Windows 10/11)1. 创建conda环境2. 获取XSLT

一文教你Python如何快速精准抓取网页数据

《一文教你Python如何快速精准抓取网页数据》这篇文章主要为大家详细介绍了如何利用Python实现快速精准抓取网页数据,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录1. 准备工作2. 基础爬虫实现3. 高级功能扩展3.1 抓取文章详情3.2 保存数据到文件4. 完整示例

Java controller接口出入参时间序列化转换操作方法(两种)

《Javacontroller接口出入参时间序列化转换操作方法(两种)》:本文主要介绍Javacontroller接口出入参时间序列化转换操作方法,本文给大家列举两种简单方法,感兴趣的朋友一起看... 目录方式一、使用注解方式二、统一配置场景:在controller编写的接口,在前后端交互过程中一般都会涉及

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Java对象转换的实现方式汇总

《Java对象转换的实现方式汇总》:本文主要介绍Java对象转换的多种实现方式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java对象转换的多种实现方式1. 手动映射(Manual Mapping)2. Builder模式3. 工具类辅助映

python实现svg图片转换为png和gif

《python实现svg图片转换为png和gif》这篇文章主要为大家详细介绍了python如何实现将svg图片格式转换为png和gif,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录python实现svg图片转换为png和gifpython实现图片格式之间的相互转换延展:基于Py

Python利用ElementTree实现快速解析XML文件

《Python利用ElementTree实现快速解析XML文件》ElementTree是Python标准库的一部分,而且是Python标准库中用于解析和操作XML数据的模块,下面小编就来和大家详细讲讲... 目录一、XML文件解析到底有多重要二、ElementTree快速入门1. 加载XML的两种方式2.

C#实现将Excel表格转换为图片(JPG/ PNG)

《C#实现将Excel表格转换为图片(JPG/PNG)》Excel表格可能会因为不同设备或字体缺失等问题,导致格式错乱或数据显示异常,转换为图片后,能确保数据的排版等保持一致,下面我们看看如何使用C... 目录通过C# 转换Excel工作表到图片通过C# 转换指定单元格区域到图片知识扩展C# 将 Excel

C++使用printf语句实现进制转换的示例代码

《C++使用printf语句实现进制转换的示例代码》在C语言中,printf函数可以直接实现部分进制转换功能,通过格式说明符(formatspecifier)快速输出不同进制的数值,下面给大家分享C+... 目录一、printf 原生支持的进制转换1. 十进制、八进制、十六进制转换2. 显示进制前缀3. 指

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t