Cómo realizar la prueba de Grubbs en Python

Prerrequisitos: Métodos Paramétricos y No Paramétricos , Prueba de Hipótesis 

En este artículo, discutiremos los diferentes enfoques para realizar la prueba de Grubbs en el lenguaje de programación Python. 

La prueba de Grubbs también se conoce como prueba residual normalizada máxima o prueba de desviación estudentizada extrema y es una prueba que se utiliza para detectar valores atípicos en un conjunto de datos univariado que se supone que proviene de una población distribuida normalmente. Esta prueba se define para la hipótesis:

  • Ho: No hay valores atípicos en el conjunto de datos.
  • Ha: Hay exactamente un engrasador en la base de datos

Método 1: Realización de la prueba de Grubbs de dos lados 

En este método para realizar la prueba de grubb, el usuario debe llamar a la función smirnov_grubbs.test() desde el paquete outlier_utils pasado con los datos requeridos pasados ​​como parámetros.

Sintaxis: smirnov_grubbs.test(datos, alfa)

Parámetros:

  • datos: un vector numérico de valores de datos
  • alfa: El nivel de significación a utilizar para la prueba.

Ejemplo:

En este ejemplo, estamos realizando la prueba de Grubbs de dos caras, que detectará valores atípicos en ambos extremos del conjunto de datos utilizando la función smirnov_grubbs.test() en el lenguaje de programación python.

Python

import numpy as np
from outliers import smirnov_grubbs as grubbs
 
# define data
data = np.array([20, 21, 26, 24, 29, 22,
                 21, 50, 28, 27])
 
# perform Grubbs' test
grubbs.test(data, alpha=.05)

Producción:

array([20, 21, 26, 24, 29, 22, 21, 28, 27])

Método 2: Realización de la prueba de Grubbs de un lado

En este enfoque para obtener la prueba de grubb de un solo lado, el usuario debe llamar a la función grubbs.min_test() para obtener el valor mínimo. el valor atípico del conjunto de datos dado o grubbs.max_test() para obtener el máximo. valor atípico del conjunto de datos dado.

Sintaxis:

grubbs.min_test(datos, alfa)

grubbs.max_test(datos, alfa)

Ejemplo 1:

En este ejemplo, realizaremos una prueba de Grubbs de un solo lado utilizando la función grubbs.min_test() de los datos proporcionados en el lenguaje de programación python.

Python

import numpy as np
from outliers import smirnov_grubbs as grubbs
 
# define data
data = np.array([20, 21, 26, 24, 29,
                 22, 21, 50, 28, 27, 5])
 
print("Data after performing min one-side grubb's test: ")
 
# perform min Grubbs' test
grubbs.min_test(data, alpha=.05)

Producción:

Data after performing min one-side grubb's test: 
array([20, 21, 26, 24, 29, 22, 21, 50, 28, 27,  5])

Ejemplo 2:

En este ejemplo, realizaremos una prueba de Grubbs de un solo lado utilizando la función grubbs.max_test() de los datos proporcionados en el lenguaje de programación python.

Python

import numpy as np
from outliers import smirnov_grubbs as grubbs
 
# define data
data = np.array([20, 21, 26, 24, 29, 22,
                 21, 50, 28, 27, 5])
 
print("Data after performing min one-side grubb's test: ")
 
# perform max Grubbs' test
grubbs.max_test(data, alpha=.05)

Producción:

Data after performing min one-side grubb's test:
array([20, 21, 26, 24, 29, 22, 21, 28, 27,  5])

Método 3: extraiga el índice del valor atípico utilizando la prueba de gribb

En este enfoque, el usuario debe seguir la siguiente sintaxis para obtener el índice en el que está presente el valor atípico de los datos proporcionados. 

Función grubbs.max_test_indices(): esta función devuelve el índice del valor atípico presente en la array.

Sintaxis: grubbs.max_test_indices(datos,alfa)

Python

import numpy as np
from outliers import smirnov_grubbs as grubbs
 
# define data
data = np.array([20, 21, 26, 24, 29, 22,
                 21, 50, 28, 27, 5])
 
grubbs.max_test_indices(data, alpha=.05)

Producción:

[7]

Método 4: extraiga el valor del valor atípico utilizando la prueba de grubb

En este enfoque, el usuario debe seguir la siguiente sintaxis para obtener el valor en el que está presente el valor atípico de los datos proporcionados. 

Función grubbs.max_test_outlines(): esta función devuelve el valor del valor atípico presente en la array.

grubbs.max_test_outlines(datos,alpfa)

Python

import numpy as np
from outliers import smirnov_grubbs as grubbs
 
# define data
data = np.array([20, 21, 26, 24, 29, 22,
                 21, 50, 28, 27, 5])
 
grubbs.max_test_outliers(data, alpha=.05)

Producción:

[50]

Publicación traducida automáticamente

Artículo escrito por geetansh044 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *