Как найти столбцы, которые хотя бы содержат один отрицательный элемент? - PullRequest
1 голос
/ 15 января 2020

В Python, для массива, как я могу найти столбцы, которые хотя бы содержат один отрицательный элемент? Кроме того, как найти медиану строк, которые содержат хотя бы одно отрицательное значение? Допустим, это наш массив:

import numpy as np
a = np.array([[1,2,0,-4],[-3,4,-4,1],[3,6,2,9]])

Заранее спасибо.

1 Ответ

4 голосов
/ 15 января 2020
>>> (a < 0).any(axis=0)
array([ True, False,  True,  True])

# Columns.
>>> np.median(a[:, (a < 0).any(axis=0)], axis=0)
array([1., 0., 1.])

# Rows.
>>> np.median(a[:, (a < 0).any(axis=0)], axis==1)
array([ 0., -3.,  3.])

# Median of rows where row contains at least one negative value.
>>> np.median(a[(a < 0).any(axis=1), :], axis=1)
array([ 0.5, -1. ])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...