Want to make creations as awesome as this one?

Transcript

Histogram

Un histograma es una representación en barras de la distribución de los datos. En el eje horizontal se indican los valores o subrango de valores de las variables y en el vertical sus frecuencias. Utiliza este tipo de diagrama cuando desees observar el grado de homogeneidad o variabilidad de las columnas cuantitativas y continuas del dataframe.

El mismo resultado anterior se obtendría de ejecutar la función hist a través de la envoltura de Pandas

La función histplot de Seaborn obtiene el mismo resultado para la columna LifeExpectancy al ejecutar el siguiente código

Histograma con Pandas

Histograma con Seaborn

¡Ahora es tu turno!

El mismo resultado anterior se obtendría de ejecutar la función hist a través de la envoltura de Pandas

Reflexiona

Cuando se ocupa la función hist de matplotlib especificando únicamente la serie a graficar, se utiliza 10 como el número de clases (número de bins) por defecto y la anchura de cada clase, se calcula dividiendo el rango de valores (máximo - mínimo) entre el número de bins. Grafiquemos por ejemplo la columna LifeExpectancy (cuantitativa y continua) del dataframe countries plt.hist(countries['LifeExpectancy']) En la figura se observan las 10 clases (barras o bins) y la anchura de cada clase es de 4.63 (max - min)/10. Sin embargo, las clases pueden especificarse explícitamente, cambiando el parámetro bin a un número entero (cantidad de clases igualmente espaciadas) o a una secuencia que define los bordes de las clases (y en este caso las clases pueden estar espaciadas de manera irregular) Probemos esto último, haciendo 10 clases cada una con una anchura de 10 años. plt.hist(countries['LifeExpectancy'], bins=[0,10,20,30,40,50,60,70,80,90,100]) El histograma obtenido muestra que la expectativa de vida en la mayoría de los países está entre los 70 y 80 años.

El mismo resultado anterior se obtendría de ejecutar la función hist a través de la envoltura de Pandas countries['LifeExpectancy'].hist(bins=[0,10,20,30,40,50,60,70,80,90,100]) countries.hist(figsize=(10,10)) Además, con Pandas es posible obtener diagramas de frecuencia (NO se denominan histogramas propiamente) a partir de columnas cualitativas (categóricas) en lugar de cuantitativas. Por ejemplo, si quisiéramos obtener el número de países por contienente countries_by_continent = countries.groupby('Continent')['Code'].count() countries_by_continent.plot(kind='bar')

sns.histplot(countries['LifeExpectancy'], bins=[0,10,20,30,40,50,60,70,80,90,100]) También es posible a través de Seaborn obtener diagramas de frecuencia de columnas categóricas. Para el mismo ejemplo de países por continente utilizamos: sns.countplot(countries['Continent']) plt.xticks(rotation=90)

Para culminar este subtema, completa lo siguiente: Utiliza el dataframe countries para obtener, con la plataforma de trazado que desees, un histograma de la variable Population y analiza los siguientes cuestionamientos:

  1. ¿Por qué crees que sólo se alcanzan a distinguir 2 barras (bins)?
  2. Calcula numéricamente la anchura de cada bin
  3. Para obtener mayor detalle, ¿deberías aumentar o disminuir el número de bins?
  4. ¿Será conveniente pasar a la función hist la secuencia para definir los bordes de las clases?