python - 考试项目python,从数组中删除最小值
问题描述
下面是我到目前为止的代码(computeFinalGrades
)在代码内部我正在使用另一个代码(roundGrade
- 这有效)我得到错误代码AttributeError: 'numpy.ndarray' object has no attribute 'remove'
在下面你还可以看到分配的描述。
我尝试在这里搜索任何解决方案,但我发现的解决方案无法正常工作。如果你们中的任何人有更好的解决方案,请随时分享。
import numpy as np
from gradesRounded import roundGrade
def computeFinalGrades(grades):
if -3 in grades:
gradesFinal= -3
elif len(grades)>=2:
grades.remove(min(grades))
finalgrade = np.mean(grades)
gradesFinal = roundGrade(finalgrade)
elif len(grades)==1:
gradesFinal = grades
return gradesFinal
#print((computeFinalGrades(np.array([[7,4,10],[7,4,12]])))) - this is the testcode
圆形等级代码:
def roundGrade(grades):
gradesRounded = []
for grades in grades:
if (-5 <grades<- 1.5):
grade = '-3'
elif (-1.5 <=grades< 1.5):
grade = '00'
elif (1.5 <=grades< 3):
grade = '02'
elif (3 <=grades< 5.5):
grade = '4'
elif (5.5 <=grades< 8.5):
grade = '7'
elif (8.5 <=grades< 11):
grade = '10'
elif (11 <=grades< 15):
grade = '12'
gradesRounded.append(grade)
return gradesRounded
和描述:
输入 = 成绩:一个 N × M 矩阵,包含在 M 个不同作业中给予 N 名学生的 7 步等级的成绩。output=gradesFinal:一个长度为 n 的向量,其中包含 N 个学生中每个学生的最终成绩。
对于每个学生,最终成绩必须按以下方式计算:
- 如果只有一项作业 (M = 1),则最终成绩等于该作业的成绩。
- 如果有两个或多个作业(M > 1),则丢弃最低成绩。最终成绩计算为 M - 1 个最高成绩的平均值,四舍五入到量表上最接近的成绩(使用函数 roundGrade)。
- 不管上述情况如何,如果学生在一项或多项作业中的成绩为 -3,则最终成绩必须始终为 -3。
解决方案
Then np.remove
or ndarray.remove
functions does not exist. You should be using np.delete
and end up with :
def computeFinalGrades(grades):
if -3 in grades:
gradesFinal= -3
elif len(grades)>=2 :
np.delete(grades, np.argmin(grades))
finalgrade = np.mean(grades)
gradesFinal = roundGrade(finalgrade)
elif len(grades)==1:
gradesFinal = grades[0] # as Keredu said below
return gradesFinal
Where np.argmin
returns the index of the smallest element in the numpy array.
推荐阅读
- python - 使用 open('index.html').read().format() 时出现 Python 错误
- linux - 流文件内容直到遇到子字符串
- javascript - 通过 [...] 或 slice(0) 克隆数组的问题
- android - 我的回收站视图未显示列表项,但在我的日志中它们是可见的
- excel - 将打开的 Access 数据库复制到存档文件夹中
- excel - 根据 A 列的常用值合并 B 列的值
- c# - 远程属性没有命中动作控制器方法
- javascript - 使用光滑的滑块和视频自动播放
- flask - 如何实现烧瓶重定向装饰器
- python - 我正在尝试使用 StockX 的非官方 API,在尝试提供我的登录详细信息时出现错误