Как выявить и обработать аномальные значения в данных?
Что такое аномальные значения?
Аномальные значения - это значения данных, которые существенно отличаются от остальных и могут искажать анализ. В случае с ростом акций, это могут быть значения, которые необычно высоки или низки для данного рынка.
Пример с данными о росте акций
Предположим, у нас есть данные о росте акций компании XYZ за неделю:
rost_akcii = [2.5, 3.2, 2.8, 3.5, 50.0, 2.7, 3.0]
В этом примере, значение "50.0" - это аномальное значение, так как оно существенно превышает остальные.
Как выявить аномальные значения?
Для выявления аномальных значений в росте акций, мы можем воспользоваться статистическими методами. Один из них - это межквартильный диапазон (IQR).
Межквартильный диапазон (IQR) определяется как разница между третьим квартилем (Q3) и первым квартилем (Q1):
Применение межквартильного диапазона (IQR)
Давайте найдем аномальные значения, используя IQR:
import numpy as np q1 = np.percentile(rost_akcii, 25) q3 = np.percentile(rost_akcii, 75) iqr = q3 - q1 nizhnyaya_granica = q1 - 1.5 * iqr verhnyaya_granica = q3 + 1.5 * iqr anomalnie_znacheniya = [znachenie for znachenie in rost_akcii if znachenie < nizhnyaya_granica or znachenie > verhnyaya_granica]
В данном примере, аномальные значения будут те, которые меньше нижней границы или больше верхней границы.
q1 = np.percentile(rost_akcii, 25)
- это находит первый квартиль (Q1).q3 = np.percentile(rost_akcii, 75)
- это находит третий квартиль (Q3).iqr = q3 - q1
- это находит межквартильный диапазон (IQR).nizhnyaya_granica = q1 - 1.5 * iqr
- это находит нижнюю границу для аномальных значений.verhnyaya_granica = q3 + 1.5 * iqr
- это находит верхнюю границу для аномальных значений.anomalnie_znacheniya = [znachenie for znachenie in rost_akcii if znachenie < nizhnyaya_granica or znachenie > verhnyaya_granica]
- это создает список аномальных значений, используя определенные границы.
Так можно выявить аномальные значения в данных о росте акций компании XYZ.