请假设以下 NumPy 数组:
A = array([1, 1, 0, 1, 0, 0, 0, 0, 0, 0])
Run Code Online (Sandbox Code Playgroud)
我想找到该数组的N连续值等于零(包括零)的索引。
例如,假设N=3. 我们知道,A[2]=0虽然A[3]>0. 因此,数组的第二个元素A不具有三个连续的零值(包括)。数组A的理想结果如下所示:
B = array([False, False, False, False, True, True, True, True, False, False])
Run Code Online (Sandbox Code Playgroud)
我可以写一个循环作为这个问题的答案:
N = 3
A = np.array([1, 1, 0, 0, 0, 0, 0, 0, 0, 0])
B = np.zeros(len(A), dtype=bool)
for i in range(len(A)):
if (i + N <= len(A)) and (sum(A[i:i + N]) == 0):
B[i] …Run Code Online (Sandbox Code Playgroud)