python读取CSV表格文件数据计算平均成绩并将数据写入新的表格中保存(demo,写给自己的仅供记录和参考)
一、准备CSV源数据文件
CSV文件中数据类似如图所示结构:
数据特点:
1)每位学生会有多条记录,记录课程、成绩等信息(统计时需要根据学号进行去重);
2)计算平均成绩时,需要保留2位小数,但是不需要进行四舍五入;
3)每位学生选修的科目数量不一样,需要自己根据每位学生的记录数进行计算;
二、实现代码(仅供参考,具体场景不同,需灵活变通)
import pandas as pd
import math,xlrd,base64
from openpyxl import Workbook
# python读取CSV表格文件数据,并根据姓名进行筛选去重
# 计算平均分,并将结果数据保存在新的表格中,每位学生的选修科目数是不一样的,需要进行一个count
# 平均分需要保留小数点后2位,不需要进行四舍五入
# 新表格中需要有学号、姓名、平均成绩、排名这几个必要项
# 计算平均成绩并将数据保留两位小数,但不进行四舍五入。利用":.2f".format(number)的形式会进行四舍五入
def truncate_decimal(total_score,count_row):
number=total_score/count_row
return math.floor(number*100)/100
# 过滤出学生姓名
def info_studentName(studentName):
findName=''