Cómo encontrar la varianza usando Python

Este artículo fue publicado originalmente en incorporado 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 medidas principales de variabilidad junto con el rango, el rango intercuartílico (IQR) 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 en grupos de muestra 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 usando Python. Antes de profundizar en el código de Python, primero explicaré qué es la varianza y cómo puede calcularla. Al final de este tutorial, comprenderá mejor por qué la varianza es una estadística importante, junto con 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 varían mucho de la media, mientras que una varianza alta indica que los valores están más dispersos de la media. Puede usar la varianza en un conjunto de muestra o en toda la población, ya que el cálculo toma en cuenta todos los puntos de datos en el conjunto dado. Aunque el cálculo difiere ligeramente cuando observa una muestra frente a una población, puede calcular la varianza como el promedio de las diferencias al cuadrado de la media.

Dado 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 todos modos, revisar la varianza puede ser útil; Si lo hace, le resultará más fácil decidir qué pruebas estadisticas para usar con sus datos. Dependiendo de las pruebas estadísticas, la variación desigual entre las muestras podría sesgar o parcialidad resultados.

uno de los populares pruebas estadisticas que aplica la varianza se llama prueba de análisis de varianza (ANOVA). Se utiliza una prueba ANOVA para medir 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, supongamos 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 medir si existen diferencias estadísticas entre las medias de los grupos. La prueba puede mostrar si los resultados se explican por diferencias grupales o diferencias individuales.

¿Cómo encuentras la varianza?

El cálculo de la varianza de un conjunto de datos puede diferir en función de si el conjunto es toda la población 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 rango de números de ejemplo, 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 desviación 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

¡Ahí lo tenemos! La varianza de nuestra población es 11.583.

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

La aplicación de n-1 a la fórmula se llama Corrección de Bessel, llamado 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 reduciendo así los sesgos.

Recalculemos la varianza pretendiendo que los valores son de una muestra:

recalcular la varianza pretendiendo que los valores son de una muestra

Como podemos ver, ¡la varianza es mayor!

Cálculo de la varianza usando Python

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

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

Escribir una función de varianza

A medida que comenzamos a escribir una función para calcular la varianza, recuerda los pasos que dimos al calcular a mano. Queremos que la función tome dos parámetros:

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

Comience definiendo la función que toma en los dos parámetros.

Comience definiendo la función que toma en los dos 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.

Por último, calcule la varianza. Usando una instrucción If/Else, podemos utilizar 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 varianza

Podemos probar el cálculo 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 forma 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 con un ejemplo real de encontrar varianza.

Cargando datos de ejemplo

El ejemplo de Pandas usa el Desafío de precios de BMW conjunto de datos de Kaggle, que se puede descargar gratis. Comience importando la biblioteca de Pandas y luego lea el archivo CSV en un marco de datos de Pandas:

leyendo el archivo CSV en un 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 cargó 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 cargó correctamente:

Visualización de las primeras filas usando bmw_df.head()
Visualización de las primeras filas usando bmw_df.head()

Encontrar la varianza para los datos de BMW

Dado que el conjunto de datos de BMW es de 4843 filas, calcular eso a mano… no sería divertido. En su lugar, podemos simplemente conectar la columna del marco de datos en nuestra función de cálculo_varianza y devolver la varianza. Encontremos la varianza de las columnas numéricas kilometraje, motor_potencia y precio.

Varianza para columnas numéricas en el marco de datos de BMW
Varianza para columnas numéricas en el marco de datos de BMW

Usando la función Pandas var()

En caso de que olvidemos el cálculo de la varianza y no podamos escribir nuestra propia función, Pandas tiene una función integrada para calcular la varianza llamada var(). Por defecto, asume una muestra de población y usa n-1 en el cálculo; sin embargo, puede ajustar el cálculo pasando el argumento ddof=0.

Función pandas var()
Función pandas var()

Como podemos ver, la función Var() coincide con los valores producidos por nuestra función de cálculo de varianza y es solo una línea de código. Al revisar los resultados, podemos ver que el kilometraje tiene una variación alta, lo que significa que los valores tienden a variar mucho de la media. Eso tiene sentido porque muchos factores influyen en la distancia que una persona necesita conducir. En comparación, engine_power tiene una variación baja, lo que indica que los valores no varían mucho de la media.

la comida para llevar

Comprender la varianza puede ser una parte importante del análisis de datos y el aprendizaje automático porque puede usarlo para evaluar las diferencias de grupo. La varianza también afecta qué pruebas estadísticas pueden ayudarnos a tomar decisiones basadas en datos. La varianza alta significa que los valores están muy dispersos de la media, mientras que la varianza baja significa que los números no están muy dispersos de la media. Si tenemos un pequeño conjunto de valores, es posible calcular la varianza a mano en solo cinco pasos. Para grandes conjuntos de datos, vimos lo simple que es calcular la varianza usando Python y Pandas. La función Var() en Pandas calcula la varianza de las columnas numéricas en un marco de datos en una sola línea de código, ¡lo cual es muy útil!


Source: The Next Web by thenextweb.com.

*The article has been translated based on the content of The Next Web by thenextweb.com. If there is any problem regarding the content, copyright, please leave a report below the article. We will try to process as quickly as possible to protect the rights of the author. Thank you very much!

*We just want readers to access information more quickly and easily with other multilingual content, instead of information only available in a certain language.

*We always respect the copyright of the content of the author and always include the original link of the source article.If the author disagrees, just leave the report below the article, the article will be edited or deleted at the request of the author. Thanks very much! Best regards!