Як використовувати numpy where() із кількома умовами
Щоб використовувати функцію NumPywhere() із кількома умовами, можна використовувати такі методи:
Спосіб 1: використовуйте Where() з OR
#select values less than five or greater than 20 x[np. where ((x < 5) | (x > 20))]
Спосіб 2. Використовуйте Where() з AND
#select values greater than five and less than 20 x[np. where ((x > 5) & (x < 20))]
У наступному прикладі показано, як використовувати кожен метод на практиці.
Спосіб 1: використовуйте Where() з OR
Наступний код показує, як вибрати кожне значення в масиві NumPy менше 5 або більше 20:
import numpy as np #define NumPy array of values x = np. array ([1, 3, 3, 6, 7, 9, 12, 13, 15, 18, 20, 22]) #select values that meet one of two conditions x[np. where ((x < 5) | (x > 20))] array([ 1, 3, 3, 22])
Зверніть увагу, що чотири значення в масиві NumPy були менше 5 або більше 20.
Ви також можете використовувати функцію розміру , щоб просто знайти, скільки значень відповідає одній із умов:
#find number of values that are less than 5 or greater than 20
(x[np. where ((x < 5) | (x > 20))]). size
4
Спосіб 2. Використовуйте Where() з AND
Наступний код показує, як вибрати кожне значення з масиву NumPy більше 5 і менше 20:
import numpy as np #define NumPy array of values x = np. array ([1, 3, 3, 6, 7, 9, 12, 13, 15, 18, 20, 22]) #select values that meet two conditions x[np. where ((x > 5) & (x < 20))] array([6, 7, 9, 12, 13, 15, 18])
Вихідний масив відображає сім значень з вихідного масиву NumPy, які були більшими за 5 і меншими за 20.
Знову ж таки, ви можете використовувати функцію розміру , щоб визначити, скільки значень відповідає обом умовам:
#find number of values that are greater than 5 and less than 20
(x[np. where ((x > 5) & (x < 20))]). size
7
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в NumPy:
Як розрахувати режим масиву NumPy
Як знайти індекс значення в масиві NumPy
Як зіставити функцію з масивом NumPy