我想计算从 excel 文件中提取的成绩的平均分数和 GPA。目前,我能够从 excel 文件中获取该列,并且我想出了如何基于手动输入创建列表。但是,我想从 excel 中获取数字等级列并将其用作输入(而不是手动输入),以便将它们转换为 GPA 并计算累积 GPA。我显然想在没有分数的情况下跳过这些类(class)。我如何在 GPA 计算中使用从 excel 中提取的数据?我是 python 的新手并且使用 excel 所以任何帮助。谢谢
Course Scores
Art II 93
Spanish II 100
Algebra II Trig Honors 96
Christian Scriptures 99
Chemistry
American History Honors 87
Phys Ed
Chemistry II 92
python代码
df3 = pd.read_excel('file.xlsx')
scores = df3[['Scores']]
print(scores)
letters = []
points = []
score = float(input("enter: "))
if(score < 101):
letters.append('A')
points.append(4.0)
elif(score < 90):
letters.append('B')
points.append(3.0)
elif(score < 80):
letters.append('C')
points.append(2.0)
elif(score < 70):
letters.append('D')
points.append(1.0)
elif(score < 60):
letters.append('F')
points.append(0.0)
print(letters)
print(points)
最佳答案
我相信你需要cut
使用 mean
,因为必须将分类转换为 float :
bins = [0,60,70,80,90,101]
df3['letters'] = pd.cut(df3['Scores'], bins=bins, labels=list('FDCBA'))
df3['points'] = pd.cut(df3['Scores'], bins=bins, labels=[0.0,1.0,2.0,3.0,4.0])
mean = df3['points'].astype(float).mean()
print (mean)
3.8333333333333335
print (df3)
Course Scores letters points
0 Art II 93.0 A 4.0
1 Spanish II 100.0 A 4.0
2 Algebra II Trig Honors 96.0 A 4.0
3 Christian Scriptures 99.0 A 4.0
4 Chemistry NaN NaN NaN
5 American History Honors 87.0 B 3.0
6 Phys Ed NaN NaN NaN
7 Chemistry II 92.0 A 4.0
关于python - 使用python对从excel中提取的数据进行计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63259867/