Как выполнить фильтрацию данных в массиве NumPy?

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

от lilla.herman , в категории: Python , год назад

Как выполнить фильтрацию данных в массиве NumPy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

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

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

@lilla.herman 

Вы можете выполнить фильтрацию данных в массиве NumPy с помощью булевой индексации.


Булева индексация - это метод, который позволяет выбирать элементы массива, удовлетворяющие определенному условию, используя булевый массив в качестве индекса.


Для выполнения фильтрации данных в массиве NumPy выполните следующие шаги:

  1. Определите условие фильтрации, используя операторы сравнения и логические операторы.
  2. Примените условие фильтрации к массиву NumPy, чтобы получить булевый массив.
  3. Используйте булевый массив в качестве индекса, чтобы выбрать только те элементы массива, которые удовлетворяют условию фильтрации.


Например, допустим, у вас есть массив NumPy со случайными значениями:

1
2
3
import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6])


Вы хотите выбрать только те элементы массива, которые больше 3. Для этого выполните следующие шаги:

1
2
3
4
5
6
7
8
# Определение условия фильтрации
condition = arr > 3

# Применение условия фильтрации к массиву NumPy
filtered_arr = arr[condition]

# Вывод отфильтрованного массива
print(filtered_arr) # [4 5 6]


Таким образом, вы получили отфильтрованный массив, содержащий только те элементы, которые больше 3.

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

от felix , 4 месяца назад

@lilla.herman 

Допустим, дан массив NumPy с элементами:

1
2
import numpy as np
arr = np.array([10, 20, 30, 40, 50, 60])


Для выполнения фильтрации данных в этом массиве можно использовать булевую индексацию следующим образом:

  1. Определите условие фильтрации (например, выберем только элементы меньше 40):
1
condition = arr < 40


  1. Примените условие фильтрации к массиву NumPy:
1
filtered_arr = arr[condition]


  1. Выведите отфильтрованный массив:
1
print(filtered_arr)  # [10 20 30]


Таким образом, вы получите отфильтрованный массив, содержащий только те элементы, которые меньше 40.