Cómo encontrar la varianza usando Python

Cómo encontrar la varianza usando Python

julio 4, 2022 0 Por RenzoC


Este artículo fue publicado originalmente en Built In por Eric Kleppen.

La varianza es una estadística poderosa utilizada en el análisis de datos y el aprendizaje automático. Es una de las cuatro principales medidas de variabilidad junto con el rango, el rango intercuartílico (RIC) y la desviación estándar. Comprender la varianza es importante porque le brinda información sobre la distribución de sus datos y puede usarse para comparar diferencias entre grupos de muestras o identificar características de modelado importantes. La varianza también se usa en el aprendizaje automático para comprender los cambios en el rendimiento del modelo debido al uso de diferentes muestras de datos de entrenamiento.

Calcular la varianza es fácil con Python. Antes de sumergirme en el código Python, primero explicaré qué es la varianza y cómo puedes calcularla. Al final de este tutorial, comprenderá mejor por qué la varianza es una estadística importante, así como varios métodos para calcularla usando Python.

¿Qué es la varianza?

La mejor experiencia al mejor precio

¡Suscríbase a nuestro boletín y sea el primero en saber cuándo estarán a la venta las entradas para la Conferencia TNW 2023!

La varianza es una estadística que mide la dispersión. Una varianza baja indica que los valores son generalmente similares y no se desvían mucho de la media, mientras que una varianza alta indica que los valores están más alejados de la media. Puede usar la varianza sobre un conjunto de muestras o sobre toda la población, porque el cálculo considera todos los puntos de datos en el conjunto dado. Aunque el cálculo difiere ligeramente cuando se compara una muestra con una población, puede calcular la varianza como la media de las diferencias al cuadrado de la media.

Debido a que la varianza es un valor al cuadrado, puede ser difícil de interpretar en comparación con otras medidas de variabilidad como la desviación estándar. De cualquier manera, puede ser útil examinar la varianza; esto puede facilitarle la decisión de qué pruebas estadísticas usar con sus datos. De acuerdo con las pruebas estadísticas, la variación desigual entre las muestras podría sesgar o sesgar los resultados.

Una de las pruebas estadísticas populares que aplica la varianza se llama prueba de análisis de varianza (ANOVA). Se utiliza una prueba ANOVA para evaluar si alguna de las medias de los grupos es significativamente diferente entre sí al analizar una variable independiente categórica y una variable dependiente cuantitativa. Por ejemplo, suponga que desea analizar si el uso de las redes sociales afecta las horas de sueño. Puede dividir el uso de las redes sociales en diferentes categorías, como uso bajo, uso medio y uso alto, y luego ejecutar una prueba ANOVA para evaluar si existen diferencias estadísticas entre las medias del grupo. La prueba puede mostrar si los resultados se explican por diferencias grupales o diferencias individuales.

¿Cómo encontrar la brecha?

El cálculo de la varianza de un conjunto de datos puede diferir dependiendo de si el conjunto es la población completa o una muestra de la población.

La fórmula para calcular la varianza de una población completa se ve así:

σ² = ∑ (Xᵢ— μ)² / N

Una explicación de la fórmula:

  • σ² = varianza de la población
  • Σ = suma de…
  • Χᵢ = cada valor
  • μ = media de la población
  • Ν = número de valores en la población
  • Usando un ejemplo de rango de números, veamos el cálculo paso a paso.

Ejemplo de rango de números: 8, 6, 12, 3, 13, 9

Encuentre la media poblacional (μ):

Calcule las desviaciones de la media restando la media de cada valor.

Cálculo para encontrar la varianza en Python

Eleva al cuadrado cada desviación para obtener un número positivo.

Cuadre cada espacio con un número positivo

Suma los valores al cuadrado.

Suma los valores al cuadrado

Divide la suma de cuadrados por N o n-1.

Como estamos trabajando con toda la población, dividiremos por N. Si estuviéramos trabajando con una muestra de la población, dividiríamos por n-1.

69,5/6 = 11,583

¡Lo tenemos! La varianza de nuestra población es 11.583.

¿Por qué usar n-1 para calcular la varianza de la muestra?

La aplicación de n-1 a la fórmula se llama corrección de Bessel, llamada así por Friedrich Bessel. Cuando usamos muestras, necesitamos calcular la varianza estimada para la población. Si usáramos N en lugar de n-1 para la muestra, la estimación estaría sesgada y podría subestimar la varianza de la población. El uso de n-1 hará que la estimación de la varianza sea más grande, sobrestimando la variabilidad en las muestras y, por lo tanto, reduciendo el sesgo.

Recalculemos la varianza suponiendo que los valores provienen de una muestra:

recalcular la varianza pretendiendo que los valores provienen de una muestra

Como podemos ver, ¡la varianza es mayor!

Calcular la varianza con Python

Ahora que hemos hecho el cálculo a mano, podemos ver que completarlo para una gran cantidad de valores sería muy tedioso. Afortunadamente, Python puede manejar fácilmente la computación de datos muy grandes. Exploraremos dos métodos usando Python:

  • Escribir nuestra propia función de cálculo de varianza
  • Usar la función integrada de Pandas

Escribe una función de varianza

Cuando comencemos a escribir una función para calcular la varianza, recuerda los pasos que dimos al calcularla a mano. Queremos que la función acepte dos parámetros:

  • población: una serie de números
  • is_sample: un booleano para modificar el cálculo dependiendo de si estamos trabajando con una muestra o una población

Comience por definir la función que tiene en cuenta ambos parámetros.

Comience por definir la función que tiene en cuenta ambos parámetros.

A continuación, agregue lógica para calcular la media de la población.

A continuación, agregue lógica para calcular la media de la población.

Después de calcular la media, encuentre las diferencias de la media para cada valor. Puede hacer esto en una línea usando una lista de comprensión.

encontrar las diferencias de la media para cada valor.

Luego eleva al cuadrado las diferencias y súmalas.

Luego eleva al cuadrado las diferencias y súmalas.

Finalmente, calcule la varianza. Al usar una instrucción If/Else, podemos usar el parámetro is_sample. Si is_sample es verdadero, calcule la varianza usando (n-1). Si es falso (el valor predeterminado), use N:

Calcular la brecha

Podemos probar las matemáticas usando el rango de números que procesamos a mano:

Cómo encontrar la varianza en Python

Encontrar varianza usando pandas

Aunque podemos escribir una función para calcular la varianza en menos de 10 líneas de código, hay una manera aún más fácil de encontrar la varianza. Puedes hacerlo en una línea de código usando Pandas. Carguemos algunos datos y trabajemos en un ejemplo real de búsqueda de varianza.

Cargando datos de muestra

El ejemplo de Pandas utiliza el conjunto de datos BMW Price Challenge de Kaggle, que se puede descargar gratis. Comience importando la biblioteca de Pandas, luego lea el archivo CSV en un marco de datos de Pandas:

leyendo el archivo CSV en el marco de datos de Pandas

Podemos contar el número de filas en el conjunto de datos y mostrar las primeras cinco filas para asegurarnos de que todo se cargue correctamente:

Podemos contar el número de filas en el conjunto de datos y mostrar las primeras cinco filas para asegurarnos de que todo se cargue correctamente:

Mostrando las primeras filas usando bmw_df.head()