我试图回答以下问题,给出一个csv文件,其中的列对应于期末考试成绩和性别(等等)。我理解如何解决使用for循环,而不是pandas。
“找出班上所有女性的平均期末考试成绩。”
import pandas as pd
grades = pd.read_csv('samplegrades.csv',index_col=0)
grades['Final','Gender'== 'F'].mean() #Incorrect Line
对于使用pandas正确语法的任何建议,我将不胜感激。感谢
答案 0 :(得分:4)
尝试,
grades.loc[grades['Gender'] == 'F', 'Final'].mean()
答案 1 :(得分:3)
Option 1 is given by @Vaishali
最惯用的答案。
选项2
grades.query('Gender = "F"').Final.mean()
选项3
grades.groupby('Gender').Final.mean().loc['F']
选项4
grades[df.Gender.eq('F')].Final.mean()