精华内容
下载资源
问答
  • 学生成绩分析 EXCEL 模板、学生成绩分析 EXCEL 模板、
  • 题目要求:分析文件’课程成绩.xlsx’,至少要完成内容:分析1)每年不同班级平均成绩情况、2)不同年份总体平均成绩情况、3)不同性别学生成绩情况,并分别用合适的图表展示出三个内容的分析结果。废话不多,直接上代码1...

    题目要求:

    分析文件’课程成绩.xlsx’,至少要完成内容:分析1)每年不同班级平均成绩情况、2)不同年份总体平均成绩情况、3)不同性别学生成绩情况,并分别用合适的图表展示出三个内容的分析结果。

    废话不多,直接上代码

    1每年不同班级平均成绩情况:

    # 导入xlrd模块

    import xlrd

    from pyecharts import *

    page = page() # 实例化page类,一个页面顺序熏染读个图表

    #设置文件名和路径

    fname = '课程成绩.xlsx'

    # 打开文件

    filename = xlrd.open_workbook(fname)

    sheets=filename.nsheets#获得sheet的个数

    sheet_list = filename.sheet_names()#sheet名字

    list_x=[]

    years=["2016","2017","2018"]#年份

    for i in range(len(sheet_list)):

    listx=[]#存放班级

    dirx={}#存放班级人数

    listy=[]#存放分数

    diry={}#统计存放班级的分数

    sheet=filename.sheets()[i]#获得当前的sheet

    nrows=sheet.nrows#获得当前的sheet的行数

    diravg={}#存放平均分

    for j in range(1,nrows):

    row_datas = sheet.row_values(j)#获得当前行的所有信息

    listx.append(row_datas[0])

    listy.append(row_datas[4])

    for k in range(len(listx)):

    if listx[k] not in dirx:

    dirx[listx[k]]=1

    if "".join(listy[k].split())!='缺考':

    diry[listx[k]]=int(listy[k])

    else:

    diry[listx[k]]=0

    else:

    dirx[listx[k]]=dirx[listx[k]]+1

    if "".join(listy[k].split())!='缺考':

    diry[listx[k]]=int(listy[k])+diry[listx[k]]

    for d in dirx:

    if d not in diravg:

    diravg[d]="%.1f"%(diry.get(d)/dirx.get(d))

    keys=list(diravg.keys())

    values=list(diravg.values())

    bar=bar(years[i]+"成绩分析")

    bar.add(years[i],keys,values)

    page.add(bar)

    page.render("一个页面渲染多张图表.html")

    2不同年份总体平均成绩情况:

    import xlrd

    from pyecharts import bar

    #设置文件名和路径

    fname = '课程成绩.xlsx'

    # 打开文件

    filename = xlrd.open_workbook(fname)

    sheets=filename.nsheets#获得sheet的个数

    sheet_list = filename.sheet_names()#sheet名字

    avg=[]

    for i in range(len(sheet_list)):#获取sheet个数

    sheet=filename.sheets()[i]#获取当前的sheet

    nrows=sheet.nrows#获取行数

    sumscore=0#总分

    count=0#学生的个数

    for j in range(1,nrows):

    row_datas = sheet.row_values(j)#获得当前行的所有信息

    if "".join(row_datas[4].split())!='缺考':

    count=count+1

    sumscore+=int(row_datas[4])

    avg.append("%.1f"%(sumscore/count))#存放保留一位小数的成绩

    #print(avg)

    years=['2016','2017','2018']#设计x坐标

    bar=bar("标题:不同年份总体平均成绩情况")#设置标题

    #画图

    bar.add("图注:平均成绩",years,avg, is_label_show=true)

    bar.render("不同年份总体平均成绩情况.html")

    3不同性别学生成绩情况:

    import xlrd

    from pyecharts import line,bar,overlap

    # 设置文件名和路径

    fname = '课程成绩.xlsx'

    # 打开文件

    filename = xlrd.open_workbook(fname)

    sheets = filename.nsheets # 获得sheet的个数

    sheet_list = filename.sheet_names() # sheet名字

    listx = []

    listy = []

    for i in range(len(sheet_list)):

    sheet = filename.sheets()[i]

    nrows = sheet.nrows # 行数

    summan = 0 # 男孩子总分

    bcount = 0#男孩数量

    sumgirl = 0 # 女孩子总分

    gcount = 0#女孩数量

    for j in range(1, nrows):

    row_datas = sheet.row_values(j)

    if row_datas[1] == '男':

    if "".join(row_datas[4].split()) != '缺考':

    bcount += 1

    summan += int(row_datas[4])

    else:

    if "".join(row_datas[4].split()) != '缺考':

    gcount += 1

    sumgirl += int(row_datas[4])

    listx.append("%.1f" % (summan / bcount))

    listy.append("%.1f" % (sumgirl / gcount))

    # 画图

    years = ['2016年', '2017年', '2018年']

    # 调用line方法绘制折线图

    bar = bar("2016-2018年不同性别学生成绩情况")

    bar.add("男生成绩", years, listx,is_smooth=true, mark_point=['max'])

    line=line()

    line.add("女生成绩", years, listy, mark_point=['min'])

    overlap = overlap()

    overlap.add(bar)

    overlap.add(line)

    # overlap.show_config()

    overlap.render('不同性别学生成绩情况柱形图-折线图.html')

    希望与广大网友互动??

    点此进行留言吧!

    展开全文
  • Excel财务行政专项模板--学生成绩表
  • Excel公司绩效考核专项模板-学生成绩表
  • Excel公司绩效考核专项模板-学生成绩表(分析表)
  • excel学生成绩统计

    2008-11-07 19:54:49
    excel学生成绩统计:可以对每个学生的名次,总分,平均分,各课进行自动进行统计,每个成绩低于平均分时显示红色,高于平均分为蓝色
  • Excel(学生成绩表)

    2011-05-24 10:46:33
    含有Excel2003中好多知识,还有VBA编辑器,大家需要的可以下载看看,我个人觉得蛮有用的.
  • 这里以考试成绩举例,教大家将全校所有学生成绩Excel总表,按名字拆分为数个单独的Excel表,以便点对点地发送给每位学生。 总成绩表如下,每个学生有上下两学期的成绩: 如何按名字拆分为数个单独的Excel表?代码...

    不管是工资条还是考试成绩,出于保护隐私的善意,一般不会以公示所有人明细的方式进行信息传达,而是以点对点的方式,一一将个人信息告诉每个相应的员工或学生。
    这里以考试成绩举例,教大家将全校所有学生成绩的Excel总表,按名字拆分为数个单独的Excel表,以便点对点地发送给每位学生。
    总成绩表如下,每个学生有上下两学期的成绩:
    在这里插入图片描述

    如何按名字拆分为数个单独的Excel表?代码如下:

    import pandas as pd
    df = pd.read_excel('某顶尖院校上下两学期期末考试成绩.xlsx') #读取表
    nrow = df.shape[0]#获取表的行数
    for i in range(0, nrow,1):#遍历表
    	save_data = df[i*3:i*3+3]#将每个学生的成绩分别保存到不同表中
    	name = df.at[i*3+1, '姓名']
    	save_data.to_csv(str(name)+'成绩.csv',index=False, encoding='utf_8_sig',header=False)#设置表的格式
    

    注意:
    生成的表若不需要显示表头,则可以添加 header=False,去掉表头。
    效果如下:
    在这里插入图片描述
    在这里插入图片描述

    假设:
    新建一个表+复制一个学生数据+粘贴一个学生数据+保存表 所用时间=5秒,如果全校有8000名学生,则需花8000*5秒=40000秒=667分钟=11小时11分钟

    而利用python运行代码一键生成表只需花费10秒钟,4000倍效率的爽,快学起来!!!

    展开全文
  • Excel 可以对数据进行分组汇总,也可以用透视表对数据进行多层次分析,但提供的汇总及相关运算都很简单,稍复杂一些的运算没法实现或者很难实现了。...一、组内排序这里以学生的考试成绩表为例,现在需要对每门...

    Excel 可以对数据进行分组汇总,也可以用透视表对数据进行多层次分析,但提供的汇总及相关运算都很简单,稍复杂一些的运算没法实现或者很难实现了。比如我们希望计算分组内的排名,按分组汇总值再过滤与排序等。本文将列出这类分组后计算示例,解答并给出 SPL 解决代码。SPL 是专业计算引擎 esProc 使用的语言,用于处理结构化数据的运算非常方便。

    一、组内排序

    这里以学生的考试成绩表为例,现在需要对每门课程进行单科排名。显然这时需要先按课程分组,然后再在组内进行排序。

    Excel 文件中数据如下:

    4279d4eb95118078c6fafedff1dc6511.png

    期望结果:

    90c8ae67b917d9a3317a79dee3f368e1.png

    本文中 SPL 示例,都通过剪贴板跟 Excel 进行数据交互。在集算器设计器里编辑好 SPL 脚本后,需要先从 Excel 中将要分析的数据复制到剪贴板,然后才执行代码,执行完成后,再到 Excel 中粘贴结果。

    使用 SPL 能分步计算,步骤也很简单:

    AB
    1=clipboard().import@t()/从剪贴板导入带标题的考试成绩表
    2=A1.group(Subject)/先按科目将成绩分组
    3=A2.(~.sort(Score:-1))/然后对每一组的数据按成绩升序排列
    4=A3.(~.derive(#:Rank))/为每组数据增加一个名次字段
    5=A4.conj()/合并排好序后的各组成绩
    6=A5.new(Subject,Rank,Score,Name)/用新序表调整下字段顺序
    7=clipboard(A6.export@t())/将排名结果放回到剪贴板

    代码执行完成后,只需在Excel 中粘贴便可得到期望结果。

    如果仅希望筛选出每门课程的前三名,则只需使用 top 函数在上述分组后的数据中,取出前三名即可。

    期望结果:

    0edacbd6bcd271b10dc2e32001176bd6.png

    SPL 采用 top 函数取出前三名:

    AB
    1=clipboard().import@t()/从剪贴板导入带标题的考试成绩表
    2=A1.group(Subject)/先按科目将成绩分组
    3=A2.(~.top(-3;Score))/直接针对每组数据,根据 Score 过滤出前三名
    4=A3.(~.derive(#:Rank))/为每组数据增加一个名次字段
    5=A4.conj()/合并排好序后的各组成绩
    6=A5.new(Subject,Rank,Score,Name)/用新序表调整下字段顺序
    7=clipboard(A6.export@t())/将考生名单放回到剪贴板

    执行结束后,在Excel 中粘贴,便可得到期望结果。

    二、组后排序

    上一节是分组后,对分组内的数据进行各自的排序。现在看一下分组后,如何对整个组的汇总数据来排序。仍以上述学生的考试成绩表为例,但现在想对同学的总分进行一个排名,期望结果为:

    cb65c9f95c8560c6602eb37ba04fd750.png

    根据分组后的总分来排序时,需要使用 groups 函数,分组的同时计算出总分:

    AB
    1=clipboard().import@t()/从剪贴板导入带标题的考试成绩表
    2=A1.groups(Name;sum(Score):Total)/按姓名分组,同时计算出每个同学的总分 Total
    3=A2.sort(Total:-1)/对总分按降序排序
    4=A3.derive(#:Rank)/增加一个名次字段
    5=clipboard(A4.export@t())/排序后的结果导出后放置到剪贴板

    三、组内过滤

    现在需要将成绩落后的学生找出来,给他们补补课。由于各科考试题目的难易不同,所以不适合都按不及格的条件选出。而是根据每门课程的平均分,将平均分以下的同学找出来。

    期望结果:

    c895f0f482104354f6f986f00548abe3.png

    此时需要分组后,先算出每一门课程的平均分,然后再将在平均分以下的同学选出来。

    SPL 代码如下:

    AB
    1=clipboard().import@t()/从剪贴板导入带标题的考试成绩表
    2=A1.group(Subject)/先按科目将成绩分组
    3=A2.((AVG=~.avg(Score),~.select(Score<AVG)))/对每组数据,先算出平均分,再选出在平均分以下的同学
    4=A3.conj()/合并每门课程下的需要补课的同学名单
    5=clipboard(A4.export@t())/将学生名单放回到剪贴板

    四、组后过滤

    上一节是找出每门课程中低于平均分的同学。现在按照姓名分组,计算出每个同学的总分后,再将总分平均分以下的同学找出来。

    期望结果:

    d603e048818a12b312b9576251d04a21.png

    由于同样是对分组后的总分来过滤,仍然采用 groups 函数,分组并计算出总分,再按总分求平均以及过滤。

    SPL 代码如下:

    AB
    1=clipboard().import@t()/从剪贴板导入带标题的考试成绩表
    2=A1.groups(Name;sum(Score):Total)/按姓名分组,并计算总分
    3=A2.select(Total<A2.avg(Total))/根据总分求出平均分,然后选出总分低于平均分的同学
    4=clipboard(A3.export@t())/将结果导出并放置到剪贴板

    五、组内占比

    如下为 2019 年部分国家的 GDP 产值。现在想按地区,也即各大洲分组,然后计算出各国占所在洲的 GDP 百分比。

    2019 年部分国家 GDP 数据 (单位:亿美元):

    8a910c202f2015f8b89cb706c8a80bad.png

    期望结果:

    1f93e0e7eb27a9087b175f0badd49812.png

    计算组内的占比,同样是按地区分组后,先算出每个洲的 GDP 总量,再依次计算组内的各成员国的百分比占比。

    SPL 代码:

    AB
    1=clipboard().import@t()/从剪贴板导入带标题的考试成绩表
    2=A1.group(Area)/按地区将各国分组
    3=A2.((SUM=~.sum(GDP),~.derive(string(GDP/SUM,"0.00%"):Percentage)))/对每组数据,先算出 GDP 总量,再计算各自的百分比
    4=A3.conj()/合并所有组内数据
    5=clipboard(A4.export@t())/将结果导出后放回到剪贴板

    六、组后占比

    这一节再来看一下如何计算分组后的各大洲的全球占比。

    期望结果:

    bb2b221b2cf4f759b66b50a18312b829.png

    分组后的计算都类似,仍然采用 groups 函数,分组并同时计算出各洲的 GDP 总量,然后再求一遍各洲的 GDP 总量占全球 GDP 的百分比值。

    SPL 代码如下:

    AB
    1=clipboard().import@t()/从剪贴板导入带标题的考试成绩表
    2=A1.groups(Area;sum(GDP):Total)/按地区分组,并计算各大洲的 GDP 总值
    3=A2.derive(string(Total/A2.sum(Total),"0.00%"):Percentage)/再计算各洲的总量占全球 GDP 的百分比
    4=A3.run(Total=string(Total,"0.00"))/调整下 Total 的显示精度
    5=clipboard(A4.export@t())/将结果导出并放置到剪贴板

    更多 Excel 的分组分析,请参考《Excel 特殊分组汇总示例》。

    另外《SPL Cookbook》中还有更多敏捷计算示例。

    展开全文
  • 1.用Excel建立一个学生成绩表,包括学号、姓名、高数、英语,计算机,总分。 录入若干个学生学号、姓名、高数、英语,计算机5项数据。将其另存 为“学生成绩表.cvs”格式的文件。通过编程的方法,计算每个学生的总分...

    1.用Excel建立一个学生成绩表,包括学号、姓名、高数、英语,计算机,总分。
    录入若干个学生学号、姓名、高数、英语,计算机5项数据。将其另存
    为“学生成绩表.cvs”格式的文件。通过编程的方法,计算每个学生的总分,
    写入“学生成绩表1.cvs”文件中。
    要求:用CSV文件读、写方法实现处理。

    请在【python数据之禅】gzh后台,回复‘作业’获取答案

    展开全文
  • excel学生成绩处理系统,操作简单,功能齐全。一键生成各种分析,包括学生总分及各学科班级排名、全校排名。全校前N名学生各班分布,各班前N名学生各学科平均分。优秀率、合格率、关爱率、A等率、D等率、平均分。...
  • 1.总分选中第一个学生的全部成绩,点击常用工具栏的“自动求和”,就会求出这个学生的总成绩,然后选中这个学生成绩的单元格,拖动填充柄向下拖至最后一个学生的单元格上,全部学生的总成绩就有了。2.排名次如果一...
  • 学生成绩统计与分析,利用Excel制作,使用了数据透视
  • 在进行数据分析之前,会有许多...而原始的学生成绩表如下:(excel文件,扩展名为xls,且不带宏,免得后期处理麻烦)  将各个成绩的xls文件,加到这个原始表中,且要将成绩为0的行删掉,这样的目的是减少无效数...
  • ※※※※二、主要功能 1、在原始成绩表中自动按你要求的统计科目生成总分、平均分、班级排名、年级排名等。 2、查询:查询条件多样,可按姓名查询、按班级查询(分班);按某学科(含总分)某分数段查询;按班内...
  • 通常收回的学生试卷并不可能按已有成绩表中的顺序排列,因此每次用Excel输入成绩前都得先把试卷按记录表中的顺序进行整理排列,之后才能顺次输入,这自然是很麻烦的。实际上最快速的录入方法应该是按试卷的顺序在...
  • 单位教务部门拿来Excel两张工作表,要把“成绩表”中成绩列数据复制到“学生基本信息表”成绩列中。我对照了两个表,发现几个难点。 (1) “学生基本信息表”的姓名与“成绩表”中的姓名不一样,“学生基本信息表...
  • private void scoreToExcel(HttpServletRequest request, HttpServletResponse response, PrintWriter out) throws ServletException, IOException { TeacherDao teacherDao = new ...//查询所有学生成绩信息
  • 此案例要求用Excel VBA 制作学生成绩管理系统,其中,系统有登录窗体界面、浏览查询数据、成绩输入以及统计总分、平均分等功能。(1) 将Sheet1、Sheet2、Sheet3工作分别改名为“浏览”、“主界面”和“用户”。将...
  • ****************更新回答******************前几天 太忙了,今天回头补一下回答,使用python来解决这个问题,先上...使用pandas +xlrd 来读取Excel中的内容,并根据选择框选择的名字和ComboboxSelected绑定,来显...
  • 数据分析步骤:1.提出问题-2.理解数据-3.数据清洗-4.构建模型-5.数据可视化一、要分析...课程设置是否合理——分析学生,导师的评价以及学习成绩3.影响学习成绩的因素有哪些——分析学生年龄,最高学历,多重剥夺...
  • Excel中如何根据学生的姓名和学科查询成绩?今天小编来给大家讲解一下具体的操作方法,快来和我一起学习一下吧!工具/原料电脑(任意型号都可以)Excel(本案例使用版本为Excel 2016)例题题目如下图所示,是一份班级...
  • Excel成绩表中自动将等级转换为分数

    千次阅读 2019-11-22 15:30:12
    在评分的时候,我们往往需要将A、B、C、......等级转换为对应的分数,下表是一个例子 做成绩册转换的时候我们要对比某学生的等级然后...首先我们建立两张表:成绩表(名称为Sheet1)和转换标准表(名称为standar...
  • Excel快速查找成绩表中出错的号码(转) 为了高考,学校购进了光电阅卷机,方便了老师们的阅卷,而且还可以很方便地将学生的卷一部分成绩导出到Excel表格。老师们只需要将每位学生的卷二部分得分再输入到Excel表格中...
  • 成绩 刘步云 70 蒋奔 64 佘维娜 70 徐李鹏 65 肖彦羚 85 武秀明 77 范益春 67 季青春 82 吴超群 89 赵晓磊 67 唐海涛 98 张昊 74 王学涛 83 ...
  • 在运行之前必须有两个电子表,一个是学生成绩表,一个是班级情况表,具体格式和源程序中的两个表格一致就行了, 班级数各科目数是可以更改的,但班级名称必须是从1开始不能间断(如701,702....),每一次可生成三个表格
  • 第1章 考试成绩表总体分析 【 前 言 】 2 第1章 考试成绩表总体分析 4 1.1异常数据排查 4 1.2利用“描述统计”对成绩进行总体分析 5 实例1-2 5   本章将以初三年级的期中考试成绩为例,应用EXCEL中的数据...
  • Excel快速计算统计混合编班考试成绩表 为了保证学生成绩录入和处理的公平性,学校采用混合编班统一录入的方式。也就是说,把同年级多个班的学生成绩统一录入到一个Excel工作表中,而且使同班的学生不相邻。这种情况...
  • 特奉献以下代码,用于合并学生成绩表或者其它类似的表都可以。本代码特点在于不需要使用SQL或者Access等大头软件,只需要Excel就可以执行,非常方便,速度也不慢。转载请勿清除广告。 没有合适的局域网管理软件吗?...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 446
精华内容 178
关键字:

学生成绩表excel