Найти индексы нулевого массива в массив

У меня есть массив numpy

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

и я хотел бы получить весь индекс, когда массив содержит только нулевые значения:

index 2 -> [0,0,0,0]
index 4 -> [0,0,0,0]

Обсуждение с похожей проблемой существует: Найти индексы элементов, равные нулю, в массиве NumPy

но в этом решении мы получаем значения равные нулю, а не получаем массив с нулями, как я хочу.

Спасибо за помощь.

Структурированный массив Numpy
Структурированный массив Numpy
Однако в реальных проектах я чаще всего имею дело со списками, состоящими из нескольких типов данных. Как мы можем использовать массивы numpy, чтобы...
T - 1Bits: Генерация последовательного массива
T - 1Bits: Генерация последовательного массива
По мере того, как мы пишем все больше кода, мы привыкаем к определенным способам действий. То тут, то там мы находим код, который заставляет нас...
Что такое деструктуризация массива в JavaScript?
Что такое деструктуризация массива в JavaScript?
Деструктуризация позволяет распаковывать значения из массивов и добавлять их в отдельные переменные.
1
0
91
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать np.argwhere с np.all для получения индексов строк, где все элементы == 0:

In [11] np.argwhere((my_array == 0).all(axis=1))
Out[11]: 
array([[2],
       [4]], dtype=int64)

Или np.nonzero вместо np.argwhere дает немного более приятный результат:

In [12] np.nonzero((my_array == 0).all(axis=1))
Out[12]: (array([2, 4], dtype=int64),)

Другие вопросы по теме