Detectarea mai multor anomalii în serii de timp sezoniere

Introducere în Detecția Anomaliilor în R

Alastair Rushworth

Data Scientist

Date lunare privind veniturile

head(msales)
  sales month
1 6.068     1
2 5.966     2
3 6.133     3
4 6.230     4
5 6.407     5
6 6.433     6

Testul Grubbs nu este potrivit aici

  • Poate exista sezonalitate
  • Pot fi mai multe anomalii
Introducere în Detecția Anomaliilor în R

Vizualizarea veniturilor lunare

plot(sales ~ month, data = msales, type = 'o')

Introducere în Detecția Anomaliilor în R

Utilizarea algoritmului Seasonal-Hybrid ESD

library(AnomalyDetection)
sales_ad <- AnomalyDetectionVec(x = msales$sales, period = 12, 
                                direction = 'both')

Argumente

  • x: vector de valori
  • period: perioada modelului repetitiv
  • direction: detectează anomalii mici ('neg'), mari ('pos') sau ambele ('both')

Descărcarea pachetului de la https://github.com/twitter/AnomalyDetection

Introducere în Detecția Anomaliilor în R

Rezultatul algoritmului Seasonal-Hybrid ESD

sales_ad <- AnomalyDetectionVec(x = msales$sales, period = 12, 
                                direction = 'both')
sales_ad$anoms
  index anoms
1    14 1.561
2   108 2.156
Introducere în Detecția Anomaliilor în R

Graficul algoritmului Seasonal-Hybrid ESD

AnomalyDetectionVec(x = msales$sales, period = 12, 
                    direction = 'both', plot = T)

Introducere în Detecția Anomaliilor în R

Să exersăm!

Introducere în Detecția Anomaliilor în R

Preparing Video For Download...