-
numpy.apply_over_axes(func, a, axes)
[source] -
Apply a function repeatedly over multiple axes.
func
is called asres = func(a, axis)
, whereaxis
is the first element ofaxes
. The resultres
of the function call must have either the same dimensions asa
or one less dimension. Ifres
has one less dimension thana
, a dimension is inserted beforeaxis
. The call tofunc
is then repeated for each axis inaxes
, withres
as the first argument.Parameters: func : function
This function must take two arguments,
func(a, axis)
.a : array_like
Input array.
axes : array_like
Axes over which
func
is applied; the elements must be integers.Returns: apply_over_axis : ndarray
The output array. The number of dimensions is the same as
a
, but the shape can be different. This depends on whetherfunc
changes the shape of its output with respect to its input.See also
-
apply_along_axis
- Apply a function to 1-D slices of an array along the given axis.
Notes
This function is equivalent to tuple axis arguments to reorderable ufuncs with keepdims=True. Tuple axis arguments to ufuncs have been availabe since version 1.7.0.
Examples
12345678>>> 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
]]])
Sum over axes 0 and 2. The result has same number of dimensions as the original array:
1234>>> np.apply_over_axes(np.
sum
, a, [
0
,
2
])
array([[[
60
],
[
92
],
[
124
]]])
Tuple axis arguments to ufuncs are equivalent:
1234>>> np.
sum
(a, axis
=
(
0
,
2
), keepdims
=
True
)
array([[[
60
],
[
92
],
[
124
]]])
-
numpy.apply_over_axes()

2025-01-10 15:47:30
Please login to continue.