终章
经过三天时间的精神回复(中间几天总是有亲戚来串门,要不然哪里需要回复这么多天!),总算是找到了一点小的状态,从十号开始真的可以开始好好的学习了。
前情提要
何老师对所有学生的成绩和排名进行了统计。虽然上面的这些操作在Excel表中也能很顺利的被完成,但是一旦写成代码的话,其实也就是改一下路径的问题。当然他现在只是在做实验,并没有真的整理出一个代码来。
现在他想做一件事:比如已知一个学生的总分和排名,他想生成这么一句“xx同学总分xxx,年级排名xxx,望知悉。”发给家长。
实验过程
数据展示
学号 | 姓名 | 班级 | 语文 | 数学 | 英语 | 音乐 | 美术 | 体育 | sum | rank | |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | A01 | 饶秀颖 | 1班 | 35.0 | 45.0 | 55.0 | 95.0 | 95.0 | 95.0 | 240.0 | 6.0 |
1 | A02 | 于俊远 | 1班 | 38.0 | 53.0 | 46.0 | 97.0 | 98.0 | 95.0 | 245.6 | 5.0 |
2 | A03 | 王五 | 1班 | 54.0 | 46.0 | 38.0 | 97.0 | 99.0 | 97.0 | 247.1 | 4.0 |
3 | A08 | 冉颇 | 3班 | 34.0 | 54.0 | 60.0 | 96.0 | 98.0 | 99.0 | 248.3 | 3.0 |
4 | A09 | 夫余岚裳 | 3班 | 43.0 | 57.0 | 67.0 | 98.0 | 95.0 | 94.0 | 252.5 | 2.0 |
5 | A10 | 薛菁 | 3班 | 55.0 | 60.0 | 65.0 | 96.0 | 93.0 | 96.0 | 252.6 | 1.0 |
基本流程
导入python库、指定文件、并展示数据
import pandas as pd
import numpy as np
import pathlib
file_path = pathlib.Path("/content/drive/MyDrive/Notebooks_data/score.xlsx")
data1 = pd.read_excel(file_path)
data1
out
学号 姓名 班级 语文 数学 英语 音乐 美术 体育 sum rank 0 A01 饶秀颖 1班 35 45 55 95 95 95 240.0 6 1 A02 于俊远 1班 38 53 46 97 98 95 245.6 5 2 A03 王五 1班 54 46 38 97 99 97 247.1 4 3 A08 冉颇 3班 34 54 60 96 98 99 248.3 3 4 A09 夫余岚裳 3班 43 57 67 98 95 94 252.5 2 5 A10 薛菁 3班 55 60 65 96 93 96 252.6 1
进行数据汇总
利用dataframe的.iterrows()进行操作
data1["summary"] = np.nan
for index, row in data1.iterrows():
data1.loc[index, "summary"] = data1.loc[index, "姓名"] + "同学的总分是:" + str(data1.loc[index, "sum"]) + ";年级排名为:" + str(data1.loc[index, "rank"]) + ",望知悉"
data1
out
学号 姓名 班级 语文 数学 英语 音乐 美术 体育 sum rank summary 0 A01 饶秀颖 1班 35 45 55 95 95 95 240.0 6 饶秀颖同学的总分是:240.0;年级排名为:6,望知悉 1 A02 于俊远 1班 38 53 46 97 98 95 245.6 5 于俊远同学的总分是:245.6;年级排名为:5,望知悉 2 A03 王五 1班 54 46 38 97 99 97 247.1 4 王五同学的总分是:247.1;年级排名为:4,望知悉 3 A08 冉颇 3班 34 54 60 96 98 99 248.3 3 冉颇同学的总分是:248.3;年级排名为:3,望知悉 4 A09 夫余岚裳 3班 43 57 67 98 95 94 252.5 2 夫余岚裳同学的总分是:252.5;年级排名为:2,望知悉 5 A10 薛菁 3班 55 60 65 96 93 96 252.6 1 薛菁同学的总分是:252.6;年级排名为:1,望知悉
数据存储
data1.to_excel("/content/drive/MyDrive/Notebooks_data/score.xlsx", index=False)
result
最后的最后,何老师仔细的看了一下这些孩子的成绩,如此的糟糕……于是他辞职去了城里参加了程序员的培训,以后准备转行当程序员了。
因为他想变得优秀!