Аналитика данных
October 5, 2023

Как выявить и обработать аномальные значения в данных?

Что такое аномальные значения?

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

Пример с данными о росте акций

Предположим, у нас есть данные о росте акций компании XYZ за неделю:

rost_akcii = [2.5, 3.2, 2.8, 3.5, 50.0, 2.7, 3.0]

В этом примере, значение "50.0" - это аномальное значение, так как оно существенно превышает остальные.

Как выявить аномальные значения?

Для выявления аномальных значений в росте акций, мы можем воспользоваться статистическими методами. Один из них - это межквартильный диапазон (IQR).

Межквартильный диапазон (IQR) определяется как разница между третьим квартилем (Q3) и первым квартилем (Q1):

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.