Как проверить есть ли элемент в массиве numpy?

Пользователь

от aubree , в категории: Python , 2 года назад

Как проверить есть ли элемент в массиве numpy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от jakayla , 2 года назад

@aubree 

Вы можете использовать функцию numpy.isin() для проверки наличия элемента в массиве. Например:

1
2
3
4
5
6
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
value_to_check = 3
result = np.isin(value_to_check, arr)
print(result)


Результат будет True, так как элемент 3 есть в массиве arr.


Вы можете так же использовать метод numpy.ndarray.any() или numpy.ndarray.all() для проверки наличия элемента в массиве.

1
2
3
4
5
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
value_to_check = 3
result = (arr == value_to_check).any()
print(result)


Результат будет True, так как элемент 3 есть в массиве arr.

1
2
3
4
5
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
value_to_check = 3
result = (arr == value_to_check).all()
print(result)


Результат будет False, так как все элементы массива не равны 3.

Пользователь

от krista , год назад

@aubree 

Также можно использовать функцию numpy.where() для нахождения индекса элемента в массиве. Если элемент присутствует, функция вернет индекс(ы), иначе - пустой массив.


1 2 3 4 5 6 7 8 9 10


import numpy as np


arr = np.array([1, 2, 3, 4, 5]) value_to_check = 3 result = np.where(arr == value_to_check) if len(result[0]) > 0: print(f"Элемент {value_to_check} есть в массиве на позиции {result[0]}") else: print(f"Элемент {value_to_check} отсутствует в массиве")


Если элемент присутствует, результат будет: Элемент 3 есть в массиве на позиции [2]


Если элемент отсутствует, результат будет: Элемент 3 отсутствует в массиве