替换n维numpy数组中特定轴索引的元素

Abh*_*pta 2 python arrays numpy numpy-ndarray

给定一个 n 维 numpy 数组。现在给出了一个轴和相应的索引。该特定轴索引中的所有元素应替换为给定值。三维数组的示例:

>>a = np.ones((2,2,2))
array([[[ 1.,  1.],
        [ 1.,  1.]],

        [[ 1.,  1.],
        [ 1.,  1.]]])
Run Code Online (Sandbox Code Playgroud)

给定轴=1,索引=0。该轴索引中的所有元素都必须为零。

>>a
array([[[ 0.,  0.],
        [ 1.,  1.]],

       [[ 0.,  0.],
        [ 1.,  1.]]])
Run Code Online (Sandbox Code Playgroud)

Pau*_*zer 5

使用swapaxes

a.swapaxes(0, axis)[index] = value
Run Code Online (Sandbox Code Playgroud)

例子:

>>> import numpy as np
>>> a = np.zeros((2,3,4))
>>> a.swapaxes(0, 1)[2] = 3
>>> a
array([[[0., 0., 0., 0.],
        [0., 0., 0., 0.],
        [3., 3., 3., 3.]],

       [[0., 0., 0., 0.],
        [0., 0., 0., 0.],
        [3., 3., 3., 3.]]])
Run Code Online (Sandbox Code Playgroud)