原文:https://docs.scipy.org/doc/numpy/reference/generated/numpy.apply_over_axes.html
校对:(虚位以待)
numpy.
apply_over_axes
(func, a, axes)[source]在多个轴上重复应用一个函数。
func被称为res = func(a,axis),其中轴是轴的第一个元素。函数调用的结果res必须具有与a相同的维或一个更小的维。如果res的尺寸小于a,则在轴之前插入尺寸。然后对轴中的每个轴重复对func的调用,res作为第一个参数。
参数: | func:function
a:array_like
axes:array_like
|
---|---|
返回: | apply_over_axis:ndarray
|
也可以看看
apply_along_axis
笔记
这个函数相当于tuple轴参数,可重排序的ufuncs和keepdims = True。ufuncs的元组轴参数自版本1.7.0起已可用。
例子
>>> a = np.arange(24).reshape(2,3,4)
>>> a
array([[[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]],
[[12, 13, 14, 15],
[16, 17, 18, 19],
[20, 21, 22, 23]]])
在轴0和2上求和。结果具有与原始数组相同的维数:
>>> np.apply_over_axes(np.sum, a, [0,2])
array([[[ 60],
[ 92],
[124]]])
ufuncs的元组轴参数是等价的:
>>> np.sum(a, axis=(0,2), keepdims=True)
array([[[ 60],
[ 92],
[124]]])