Testare gli estremi con il test di Grubbs

Introduzione all'Anomaly Detection in R

Alastair Rushworth

Data Scientist

La valutazione visiva non è sempre affidabile!

boxplot(temperature, ylab = "Celsius")

Boxplot per punti anomali

Introduzione all'Anomaly Detection in R

Test di Grubbs

  • Test statistico per decidere se un punto è anomalo
  • Presuppone che i dati siano normalmente distribuiti
  • Serve verificare prima l'assunzione di normalità
Introduzione all'Anomaly Detection in R

Verificare la normalità con un istogramma

hist(temperature, breaks = 6)

Istogramma della distribuzione dei dati

Simmetrica e a campana?

Introduzione all'Anomaly Detection in R

Eseguire il test di Grubbs

Usa la funzione grubbs.test():

grubbs.test(temperature)
    Grubbs test for one outlier
data:  temp
G = 3.07610, U = 0.41065, p-value = 0.001796
alternative hypothesis: highest value 30 is an outlier
Introduzione all'Anomaly Detection in R

Interpretare il p-value

grubbs.test(temperature)
    Grubbs test for one outlier

data:  temperature
G = 3.07610, U = 0.41065, p-value = 0.001796
alternative hypothesis: highest value 30 is an outlier

  p-value

  • Vicino a 0: evidenza più forte di un valore anomalo
  • Vicino a 1: evidenza più debole di un valore anomalo
Introduzione all'Anomaly Detection in R

Ottieni l'indice di riga di un valore anomalo

Posizione del massimo

which.max(weights)
5

Posizione del minimo

which.min(temperature)
12
Introduzione all'Anomaly Detection in R

Esercitiamoci!

Introduzione all'Anomaly Detection in R

Preparing Video For Download...