Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Numpy中的过滤器阵列_Python_Arrays_Numpy - Fatal编程技术网

Python Numpy中的过滤器阵列

Python Numpy中的过滤器阵列,python,arrays,numpy,Python,Arrays,Numpy,我有一个数组:[[True],[False],[True]]。如果我想让这个数组过滤我现有的数组,例如[[1,2],[3,4],[5,6]]应该过滤到[[1,2],[5,6]],那么正确的方法是什么 一个简单的A[b]索引给出了错误:布尔索引与维度1上的索引数组不匹配;维度为2,但相应的布尔维度为1解决方案是将数组[[True],[False],[True]]转化为形状[True,False,True],以便它对另一个数组的行进行索引。正如Divakar所说,这是真的;通常,它会将任何阵列展平为

我有一个数组:
[[True],[False],[True]]
。如果我想让这个数组过滤我现有的数组,例如
[[1,2],[3,4],[5,6]]
应该过滤到
[[1,2],[5,6]]
,那么正确的方法是什么


一个简单的
A[b]
索引给出了错误:
布尔索引与维度1上的索引数组不匹配;维度为2,但相应的布尔维度为1

解决方案是将数组
[[True],[False],[True]]
转化为形状
[True,False,True]
,以便它对另一个数组的行进行索引。正如Divakar所说,这是真的;通常,它会将任何阵列展平为一维阵列。另一个选项是删除大小为1的维度,但保留其他维度不变。

解决方案是将数组
[[True],[False],[True]]
设置为形状
[True,False,True]
,以便它可以对其他数组的行进行索引。正如Divakar所说,这是真的;通常,它会将任何阵列展平为一维阵列。另一个选项是删除尺寸为1的尺寸,但保留其他尺寸不变,

Use。。。 从文档中,
ravel
将:

返回一个连续的展开数组

所以如果我们有你的
b
数组

b = np.array([[True], [False], [True]])
我们可以使用以下方法从
子数组中提取
布尔值

b.ravel()
其中:

array([ True, False,  True], dtype=bool)
因此,我们可以简单地使用
b.ravel()
作为
a
的掩码,它将根据您的需要工作:

a = np.array([[1,2], [3,4], [5,6]])
b = np.array([[True], [False], [True]])

c = a[b.ravel()]
c
表示为:

array([[1, 2],
       [5, 6]])
使用。。。 从文档中,
ravel
将:

返回一个连续的展开数组

所以如果我们有你的
b
数组

b = np.array([[True], [False], [True]])
我们可以使用以下方法从
子数组中提取
布尔值

b.ravel()
其中:

array([ True, False,  True], dtype=bool)
因此,我们可以简单地使用
b.ravel()
作为
a
的掩码,它将根据您的需要工作:

a = np.array([[1,2], [3,4], [5,6]])
b = np.array([[True], [False], [True]])

c = a[b.ravel()]
c
表示为:

array([[1, 2],
       [5, 6]])

使用
a[b.ravel()]
.Wow。那很快。谢谢它起作用了!:)如果您发现此问题,请投票将其作为重复问题关闭。我无法使用
a[b.ravel()]
。哇。那很快。谢谢它起作用了!:)如果您发现此问题,请投票将其作为重复问题关闭。我不能