Выбор строк в массиве numpy по условию
Есть двумерный массив numpy
arr = np.arange(18).reshape((-1, 6))
[[ 0 1 1 3 4 5]
[ 6 7 8 9 10 11]
[12 13 14 15 16 17]]
Нужно отобрать строки, в которых все элементы начиная с 3го элемента > a. Например для a = 9 останется только
[[12 13 14 15 16 17]]
А для a = 7
[[ 6 7 8 9 10 11]
[12 13 14 15 16 17]]
Как это сделать не перебирая каждую строку в цикле?
Ответы (1 шт):
Автор решения: splash58
→ Ссылка
делаем выборку элементов arr[:, 2:] и проверяем, что они все больше a
arr[(arr[:, 2:] > a).all(axis=1)]