我有这个阵列
hw_grades=array([[ 57, 77, 81, 99, 100],
[ 56, 57, 70, 77, 91],
[ 62, 74, 89, 99, 100],
[ 21, 42, 53, 61, 65],
[ 37, 40, 60, 65, 81],
[ 75, 88, 92, 95, 100]])
我希望能够返回每行的平均值,而不返回最低值(我已经使用了sort()
),因此基本上我希望去掉每行的第一个元素,然后进行平均
def hw_grade_best(_array):
_array.sort()
_array[::][1:]
result = np.average(_array, axis=1)
return result
实际上没有太多的代码,_array[::][1:]
也没有真正起到任何作用,因为我可以假设到目前为止我使用它是错误的
输入hw_grade_best(hw_grades)
我想要的输出
array([ 89.25, 73.75, 90.5 , 55.25, 61.5 , 93.75])
当您这样做时:
你什么也不做,因为它不改变数组,只返回你所要求的内容。你知道吗
应将返回的数组指定为:
或者直接计算平均值:
您需要对数组进行切片以删除值,然后可以跨轴应用平均值函数:
hw_grades[:, 1:].mean(axis=1)
# array([ 89.25, 73.75, 90.5 , 55.25, 61.5 , 93.75])
相关问题 更多 >
编程相关推荐