在NumPy中,如何解释ndarray [True]的回归?

时间:2017-10-07 03:11:22

标签: python arrays numpy

在NumPy中,我知道我们可以在Python解释器中以下列方式通过布尔值索引ndarray

>>> import numpy as np
>>> b = np.arange(1, 6)
>>> print(b)
[1 2 3 4 5]
>>> bi = np.array([True, False, True, False, True])
>>> print(b[bi])
[1 3 5]

然后我尝试了b[True],我无法理解它的回归意味着什么。有人可以向我解释一下吗?感谢。

>>> print(b)
[1 2 3 4 5]
>>> b[True]
array([[1, 2, 3, 4, 5]])
>>> b[True]
array([[1, 2, 3, 4, 5]])

修改

使用此功能,我可以使用它从一级数组中获取矢量吗?如下所示:

>>> b = np.arange(1, 6)
>>> print(b)
[1 2 3 4 5]
>>> row_vec = b[True]
>>> print(row_vec)
[[1 2 3 4 5]]
>>> col_vec = b[True].T
>>> print(col_vec)
[[1]
 [2]
 [3]
 [4]
 [5]]

我不得不说,这很难理解,但这比reshape方法更好吗?

0 个答案:

没有答案