numpy,其中解释了条件输出

numpy,其中解释了条件输出,numpy,Numpy,我在努力了解numpy的情况 >>> import numpy as np >>> x = np.arange(9.).reshape(3, 3) >>> x array([[ 0., 1., 2.], [ 3., 4., 5.], [ 6., 7., 8.]]) >>> np.where( x > 5 ) (array([2, 2, 2]), array([0, 1, 2]))

我在努力了解numpy的情况

>>> import numpy as np
>>> x = np.arange(9.).reshape(3, 3)
>>> x
array([[ 0.,  1.,  2.],
       [ 3.,  4.,  5.],
       [ 6.,  7.,  8.]])
>>> np.where( x > 5 )
(array([2, 2, 2]), array([0, 1, 2]))

在上述情况下,输出的实际含义是什么,数组[0,1,2],我在输入中实际看到了什么是数组[2,2,2]

第一个数组表示行号,第二个数组表示相应的列号

如果阵列如下所示:

array([[ 0.,  1.,  2.],
   [ 3.,  4.,  5.],
   [ 6.,  7.,  8.]])
接下来

(array([2, 2, 2]), array([0, 1, 2]))
可以解释为

array(2,0) => 6
array(2,1)  => 7
array (2,2) => 8

发现三个元素,位于2,0,2,1,2,2


顺便说一句,试着帮助你。哪里会对你有很大帮助

您可能还想知道这些值在数组中的可视位置。在这种情况下,可以在条件为True时返回数组值,在条件为false时返回null值。在下面的示例中,x的值在x>5的位置返回,否则赋值为-1

x = np.arange(9.).reshape(3, 3)
np.where(x>5, x, -1)
array([[-1., -1., -1.],
       [-1., -1., -1.],
       [ 6.,  7.,  8.]])