zoukankan      html  css  js  c++  java
  • 学生手册成绩分析以学院为单位进行划分

    以学院为单位进行划分

    import pandas as pd
    import numpy as np
    

    导入学生手册考试成绩数据

    df = pd.read_excel("学生手册考试成绩.xlsx")
    

    预处理成绩数据dtype

    df['总成绩'].replace('缺考','-1',inplace=True)
    
    df[u'总成绩']=df[u'总成绩'].astype('int64')
    

    创建学院信息

    data = np.array(['法政与公共管理学院','国际文化交流学院', '化学与材料科学学院', '教育学院' , 
                     '历史文化学院','旅游系','马克思主义学院','美术与设计学院','软件学院','商学院',
                     '生命科学学院','数学与信息科学学院','体育学院','外国语学院','文学院','物理科学与信息工程学院',
                     '新闻传播学院','信息技术学院','音乐学院','职业技术学院','中燃工学院','资源与环境科学学院'])
    
    college = pd.Series(data)
    
    H = pd.DataFrame(np.random.randn(22,8),columns=["学院名称",'总人数','通过人数','80分以上','75分以上','未通过人数','及格率','优秀率'])
    

    生成22个学院的成绩表

    for i in range(0,22):
        m = df.loc[(df['学院名称'] == college[i]), ['姓名', '学号', '学院名称', '班级', '总成绩', '认证状态']]
        a=m.loc[(df['总成绩'] >= 80)].count()[0]
        b=m.loc[(df['总成绩'] >= 75)].count()[0]
        c=m.loc[(df['总成绩'] >= 70)].count()[0]
        d=m.count()[0]
        e=format(float(a)/float(d),'.3f')
        g=format(float(c)/float(d),'.3f')
        h=d-c
        H.loc[i]=[college[i],d,c,a,b,h,g,e]
        m.reset_index(drop = True)#重建索引
        #m.to_excel(college[i]+".xlsx", sheet_name='学生手册考试成绩')
    
    H.to_excel("学院分析.xlsx", sheet_name='学生手册考试成绩')
  • 相关阅读:
    2020 商业计划书
    LBDP数据采集网关的设计要求
    Net学习日记_ASP.Net_Ajax
    Net学习日记_ASP.Net_WebForm_笔记
    Net学习日记_ASP.Net_WebForm
    Net学习日记_ASP.Net_一般处理程序_笔记
    Net学习日记_ASP.Net_一般处理程序
    Net学习日记_聊天室(基于Socket,Thread)_服务器软件
    Net学习日记_聊天室(基于Socket,Thread)
    Net学习日记_泛型与反射_笔记
  • 原文地址:https://www.cnblogs.com/hebtu/p/10194782.html
Copyright © 2011-2022 走看看