我一直在努力寻找出路。
输入一个二维数组和几个列号,以数组的形式返回这些特定列中每个数字的平均值。
我知道如何输出所有列的平均值,但我不知道如何仅输出特定列的平均值。
a =数组([[0,0,1],[1,1,2],[3,3,3]])
get_average(A,[0,1])
阵列([1.333333333,1.3333333333333])
答案 0 :(得分:1)
numpy
numpy
有一个average
函数:
>>> import numpy as np
>>> a = np.array([[0, 0,1], [1, 1,2], [3, 3,3]])
>>> np.average(a[:,(0,1)], axis=0)
array([ 1.33, 1.33])
对于np.average
,axis
指定阵列轴以及平均值。例如,axis=0
平均行数。
np.average
还会提供加权平均值。
get_average
函数如果您认为您仍然需要get_average
功能,那么:
def get_average(a, cols):
return np.average(a[:,cols], axis=0)