基于Python+Pandas+Matplotlib的学生成绩分析.docxVIP

基于Python+Pandas+Matplotlib的学生成绩分析.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

?

?

基于Python+Pandas+Matplotlib的学生成绩分析

?

?

摘要:目前高校考试成绩的分析,主要是借助于Excel等对学生的成绩进行简单的统计,但在数据量较大时,在Excel中的操作就有些过于繁琐。这里以一个虚拟的班级的Java考試成绩为例,使用当前热门的数据分析语言Python,并且综合运用了Python的第三方库pandas和matplotlib进行数据可视化分析,实现学生数据的读入、数据统计、排序、分组以及图形输出平均成绩、不及格人数等之外,还将分析出班级学生知识点掌握情况。期望能为教师调整教学安排与教学方法提供参考,从而提升教学质量。

关键词:Python;Pandas;Matplotlib

1前言

在当前这个信息时代,因为计算机强大的数据处理能力和网络迅捷便利的传播方式,学生成绩信息的管理、统计和分析已经非常方便。成绩是各大学校教育教学环节中的一项重要指标,是学生学习效果、学习态度的主要体现。对考试成绩的分析,能够使学校检测出最近一段时间之内学生的学习情况,学习态度,还能很大程度的反映出教师的教学质量、治学态度和其教学方法的科学性,以及学校对学生教学管理水平。在对考试成绩进行数据分析和评价后,充分发挥它的反馈作用,以此加强教学管理,改进教学方法,提高教学质量。同时也能够指导考试的命题工作,提高考试检测质量,还能够加强学校的题库建设。

2Python及开发环境简介

2.1Python简介

Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python主要运用于科学计算和统计、人工智能、桌面界面开发、软件开发、后端开发、网络爬虫等等方面。Python设计上的风格是清晰划一的,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。Python语言的优点有很多,程序员们选择使用它作为开发语言大多是因为其简单易学、免费开源、还有着许多功能强大第三方库。

2.2开发环境PyCharmCommunityEdtion(社区版)

PyCharm是一个由JetBrains打造的Python集成开发环境,也是使用Python语言的编程人员最常用的一款PythonIDE。PyCharm分为社区版、专业版和教育版,教育版适合教学使用,专业版功能最全的收费版,社区版就是专业版的阉割版本,但解决一般问题已经足够,且是免费的,本案例就是使用的社区版。PyCharm在拥有调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制这些一般集成开发环境就拥有的功能的同时,它还提供了很多很好的功能用于Django(一种基于Python的Web开发框架)开发,而且大多数Python的第三方库可以在PyCharm中直接下载,非常便利。

3学生成绩分析的设计与实现

3.1数据导入

数据导入是程序设计的开始,有了数据才能进行处理。本程序需要处理的数据信息是学生的成绩信息,这些成绩信息是由老师在学生考试过后整理得到。得出成绩后,将成绩按照学号,姓名,性别,成绩的顺序依次输入到cjb.xlsx表格文件中保存。将表格移动到程序所在的目录下,在程序中即可使用pandas库中的读取函数之一的read_excel读入数据。主要代码如下所示。

importpandasaspd

data=pd.read_excel(rcjb.xlsx)

print(data)

执行后,得到的数据如下图3.1所示:

3.2成绩处理

3.2.1基本统计

DataFrame.describe()是pandas中一个能对数据进行快速统计的方法,用它可以完成对数据的人数、平均分、最高分、最低分,百分位数值的统计。代码如下:

print(data[成绩].describe())

如果只想要单独得到平均分或最低分、最高分等数据,只需将代码最后的describe()变成mean()或min()、max()即可。

得到的数据如下下图3.2所示:

通过图像,我们可以得到该班级有10人参加考试,班级平均分为77分,较为良好;最高分90,最低分65,在后续教学中需要对65分的同学进行辅导帮助;成绩标准差为7.93,较为平稳,说明该班级学生总体差距不是很大。

3.2.2成绩排序

DataFrame.sort_value()是pandas中的排序方法,使用它既可以根据列数据,也可根据行数据排序。本案例中自然是根据学生成绩进行排序,降序排序代码如下:

total=data.sort_values(by=成绩,ascending=False)

若想要成绩升序排序,只需要把代码中ascending=False改为ascending=True即可。

得到

文档评论(0)

134****4182 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档