Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/344.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_Numpy_Search - Fatal编程技术网

Python Numpy:条件搜索排序

Python Numpy:条件搜索排序,python,numpy,search,Python,Numpy,Search,我有以下数组 I0 = np.array([1, 0, 0, 0, 1, 0, 0, 1]) X0 = np.array([1, 3, 4, 4, 5, 6, 7, 8]) I1 = np.array([1, 0, 0, 1, 1, 0, 1]) X1 = np.array([1, 4, 5, 6, 7, 8, 9]) 对于X1中的值,其中I1==1我想找到X0中的索引,其中(I0==1)和(X0对应元素的索引为 Q0 = np.arange(X0.size)[I0 == 0] 所以 另一

我有以下数组

I0 = np.array([1, 0, 0, 0, 1, 0, 0, 1])
X0 = np.array([1, 3, 4, 4, 5, 6, 7, 8])

I1 = np.array([1, 0, 0, 1, 1, 0, 1])
X1 = np.array([1, 4, 5, 6, 7, 8, 9])

对于
X1
中的值,其中
I1==1
我想找到
X0
中的索引,其中
(I0==1)和(X0对应元素的索引为

Q0 = np.arange(X0.size)[I0 == 0]
所以

另一方面,我强烈建议将
I*
数组设置为布尔值。例如:

I0 = np.array([True, False, False, False, True, False, False, True])
这将允许您直接使用它进行索引,而无需创建另一个临时数组:

X0[I0]

我认为这并不是毫无关系的,因为你所建议的只有在
I0
是布尔值的情况下才有效。此外,还有一些numpy函数(
where
nonzero
flatnonzero
)@Paul.Updated。这是我的错误。这些函数会生成更多临时数组,我建议OP可以部分避免
I0 = np.array([True, False, False, False, True, False, False, True])
X0[I0]