[英]How do I find the mean/median of the different values in a row?
I have a dataset in a csv file that looks like this: 我在csv文件中有一个数据集,如下所示:
teacher student student grade
Jon marin 99
Jon Rob 81
Jon marly 90
Bon martin 76
Bon marie 56
Ton Seri 43
Ton Loku 99
I need an output that has the average of each teacher based on the grades obtained by student. 我需要一个输出,其中每个教师的平均值基于学生获得的成绩。 Which will look like this,
这将是这样的,
teacher student student grade teacher Average
Jon marin 99 90
Jon Rob 81 90
Jon marly 90 90
Bon martin 76 66
Bon marie 56 66
Ton Seri 43 71
Ton Loku 99 71
What is the shortest possible way to get this ? 什么是最简单的方法来获得这个?
This is my approach but it does not seem to work. 这是我的方法,但它似乎不起作用。
import pandas as pd
df = pd.read_csv('test.csv', names=['teacher', 'student', 'student grade','Average'])
df.groupby('Star Rating').mean()
使用groupby
和transform
构建一个新列,该列的索引与正在分组的索引相同。
df['teacher average'] = df.groupby('teacher')['student grade'].transform('mean')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.