我们一直在研究此功能,该功能应根据一些作业的成绩为某些学生计算最终成绩。我们的输入是一个NxM矩阵,其中包含N个学生和M个作业的分数(分数是一个数字)。该功能应该执行以下三件事:
我们一直在尝试以下代码(roundGrades()
是我们创建的另一个函数),但是我们一直在出错。
任何人都可以帮助解决此问题吗?
def computeFinalGrades(grades):
grades = np.array(grades)
SortData = np.sort(grades)
gradesFinal = np.zeros(np.size(grades, axis = 0))
for i in range(np.size(grades, axis = 0)):
if np.size(grades, axis = 1) == 1:
gradesFinal[i] = grades[i,0]
elif np.any(grades[i] == -3):
gradesFinal[i] = -3
else:
gradesFinal[i] = roundGrade([np.mean(SortData[i,1::])])[0]
return gradesFinal
我们现在收到的错误消息是:
if np.size(grades, axis = 1) == 1:
File "C:\Users\h\Anaconda3\lib\site-
packages\numpy\core\fromnumeric.py", line 2931, in size
return a.shape[axis]
IndexError: tuple index out of range
但是该程序以前也抱怨使用np.sort()
的行。