Оператор неравенства вещательного вещания - PullRequest
0 голосов
/ 08 июня 2019

Вопрос о Numpy вещании.У меня есть два массива, подобных этим:

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



>second_array = np.array([2,5])

>second_array
array([2, 5])

Что я хочу сделать, это переставить second_array и протестировать по столбцу, чтобы увидеть, является ли my_array> = second_array.Таким образом, результат будет примерно таким:


>final_array = np.array([ [ (3 >= 2), (1>= 2), (2>=2), (0>=2)] , [(4 >=5),(5>=5),(2>=5),(1>=5)]])
>final_array

array([[ True, False,  True, False],
       [False,  True, False, False]], dtype=bool)

Я довольно плохо знаком с матричными операциями в Numpy (выполняю их в R уже долгое время), так что спасибо за помощь с таким вводным вопросом.

1 Ответ

0 голосов
/ 08 июня 2019

Вам просто нужно изменить форму second_array, чтобы она имела соответствующие размеры:

my_array >= second_array.reshape(2,1) # or (-1,1) if height is unknown

Или эквивалентно:

my_array >= second_array[:,np.newaxis]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...