Python 如何将一个数组解释为另一个数组的尖括号?
我已经编写了这段代码,我试图理解将掩码应用于数组的输出的含义Python 如何将一个数组解释为另一个数组的尖括号?,python,arrays,Python,Arrays,我已经编写了这段代码,我试图理解将掩码应用于数组的输出的含义 matrix = np.random.rand(3,3) matrix output: array([[0.7441097 , 0.02908848, 0.60378581], [0.53335156, 0.21701412, 0.51545259], [0.91777356, 0.49123304, 0.15410852]]) 如何解释这一结果?这只是在做: In [1108]: matrix[0]
matrix = np.random.rand(3,3)
matrix
output:
array([[0.7441097 , 0.02908848, 0.60378581],
[0.53335156, 0.21701412, 0.51545259],
[0.91777356, 0.49123304, 0.15410852]])
如何解释这一结果?这只是在做:
In [1108]: matrix[0]
Out[1108]: array([0.02502891, 0.74397363, 0.74176154])
In [1109]: matrix[1]
Out[1109]: array([0.76480152, 0.84331737, 0.29647379])
In [1110]: matrix[2]
Out[1110]: array([0.68258943, 0.43118925, 0.82981894])
当您这样做时:
matrix[mask]
其中,掩码为:
matrix([[0, 0, 2],
[1, 1, 0],
[2, 2, 2]])
它返回一个数组,其第一个元素为:
[matrix[0], matrix[0], matrix[2]],
第二:
以此类推。这就是简单地做这个:
In [1108]: matrix[0]
Out[1108]: array([0.02502891, 0.74397363, 0.74176154])
In [1109]: matrix[1]
Out[1109]: array([0.76480152, 0.84331737, 0.29647379])
In [1110]: matrix[2]
Out[1110]: array([0.68258943, 0.43118925, 0.82981894])
当您这样做时:
matrix[mask]
其中,掩码为:
matrix([[0, 0, 2],
[1, 1, 0],
[2, 2, 2]])
它返回一个数组,其第一个元素为:
[matrix[0], matrix[0], matrix[2]],
第二:
等等