我有一个二维数组(相同形状)的列表,并且希望在与输入形状相同的结果数组中获取所有项的平均值和偏差。我很难从文档中了解这是否可能。我对 axis 和 keepdims 参数的所有尝试都会产生不同形状的结果。
例如,我希望有:mean([x, x]) 等于x,并且std([x, x]) 零形状像x。
这可以在不重塑数组的情况下实现吗?如果没有,如何通过重塑来做到这一点?
Example:
>> x= np.array([[1,2],[3,4]])
>>> y= np.array([[2,3],[4,5]])
>>> np.mean([x,y])
3.0
I want [[1.5,2.5],[3.5,4.5]]
反而。
正如迪维卡指出的,您可以将数组列表传递给np.mean
并指定axis=0
对列表中每个数组的相应值进行平均:
In [13]: np.mean([x,y], axis=0)
Out[13]:
array([[ 1.5, 2.5],
[ 3.5, 4.5]])
这适用于任意长度的列表。对于只有两个数组,(x+y)/2.0是比较快的:
In [20]: %timeit (x+y)/2.0
100000 loops, best of 3: 1.96 µs per loop
In [21]: %timeit np.mean([x,y], axis=0)
10000 loops, best of 3: 21.6 µs per loop
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)