将一个 DF 中的值与另一个 DF 中的值进行多索引并绘制结果
Dividing values in one DF with multi-indexing by values from another and plotting results
我有一个 DF,其中包含 N 个学生和不同学科的成绩:
ANA Math 96.0
Biology 82.0
Chemistry 72.0
TONY Math 77.0
Biology 100.0
Chemistry 82.0
ARI Math 94.0
Biology 98.0
我希望为 3 个 最好 学生绘制一个条形图,其中包含 所有 科目的成绩(按降序排列),最好的时候学生是他拥有的 所有 科目平均成绩最高的人。
在图中,每个学生,每个年级应该乘以它在df2中的值(每个学生有不同的值) :
ANA 0.80
TONY 0.75
ARI 0.95
例如:情节中的 ANA 等级应为:
ANA Math 76.8
Biology 65.6
Chemistry 57.6
我已经为最好的 3 名学生绘制了图表,但是学生没有按降序排列。
此外,我还没有找到一种方法在绘制之前将每个学生的成绩乘以 df2 中的值。
有什么建议吗?
top3 = df.groupby(level=0).mean().nlargest(3).index.tolist()
df.sort_index().loc[top3].mul(df2, level=0)
0 1
ANA Biology 65.60
Chemistry 57.60
Math 76.80
ARI Biology 93.10
Math 89.30
TONY Biology 75.00
Chemistry 61.50
Math 57.75
dtype: float64
我有一个 DF,其中包含 N 个学生和不同学科的成绩:
ANA Math 96.0
Biology 82.0
Chemistry 72.0
TONY Math 77.0
Biology 100.0
Chemistry 82.0
ARI Math 94.0
Biology 98.0
我希望为 3 个 最好 学生绘制一个条形图,其中包含 所有 科目的成绩(按降序排列),最好的时候学生是他拥有的 所有 科目平均成绩最高的人。
在图中,每个学生,每个年级应该乘以它在df2中的值(每个学生有不同的值) :
ANA 0.80
TONY 0.75
ARI 0.95
例如:情节中的 ANA 等级应为:
ANA Math 76.8
Biology 65.6
Chemistry 57.6
我已经为最好的 3 名学生绘制了图表,但是学生没有按降序排列。 此外,我还没有找到一种方法在绘制之前将每个学生的成绩乘以 df2 中的值。
有什么建议吗?
top3 = df.groupby(level=0).mean().nlargest(3).index.tolist()
df.sort_index().loc[top3].mul(df2, level=0)
0 1
ANA Biology 65.60
Chemistry 57.60
Math 76.80
ARI Biology 93.10
Math 89.30
TONY Biology 75.00
Chemistry 61.50
Math 57.75
dtype: float64