con este metodo puedes ver los datasets disponibles en seaborn:
sns.get_dataset_names()
–>[‘anagrams’,
‘anscombe’,
‘attention’,
‘brain_networks’,
‘car_crashes’,
‘diamonds’,
‘dots’,
‘exercise’,
‘flights’,
‘fmri’,
‘gammas’,
‘geyser’,
‘iris’,
‘mpg’,
‘penguins’,
‘planets’,
‘taxis’,
‘tips’,
‘titanic’]
PRO TIP: hue es una manera de separar por alguna categoría nuestra gráfica.
Ejemplo: con solo añadir hue='smoker', podemos ver de un vistazo que los “No fumadores” dan más propina (el vicio cuesta):
Seaborn cuenta con un conjunto de dataFrame que trae por defecto. Usaremos el dataset ‘tips’ para mostrar los diferentes parametros con el que podemos configurar una grafica
Importamos las librerias necesarias y llamamos al dataset
import seaborn as sns
import matplotlib.pyplot as plt
tips = sns.load_dataset('tips')
tips ---> #dataset de las propinas en un restaurante
Grafico de frecuencia para el total de la cuenta
sns.displot(data=tips, x='total_bill')
plt.show()
Al agregar otra variable, seaborn reconoce que un grafico de frecuencia no es el adecuado por lo que busca el que mejor se adecue.
Cambiar el tipo de grafico, mostrar la leyenda, cambiar la paleta de colores y la transparencia de la grafica
#kind: cambia el tipo de grafico#legend: muestra la leyenda en el grafico#palette: cambia el color de las graficas#alpha: cambia la transparencia de la grafica
sns.displot(data=tips, x='total_bill', hue='sex', kind='kde', legend=True, palette='dark', alpha=0.5)
plt.show()
Aún no vemos la punta del iceberg, pero en mi humilde opinión, Seaborn es capaz de hacer las gráficas más espectaculares.
Animo a todos a dar un vistazo a su galería oficial: https://seaborn.pydata.org/examples/index.html
Con estas herramientas da gusto trabajar, muchachos.
¡Un saludo, amigos! 😃
jointplot() traza la relación o distribución conjunta de dos variables mientras agrega ejes marginales que muestran la distribución univariada de cada una por separado:
A la fecha septiembre/2024, hay funciones que ya no están vigentes
* No hay sns.distplot, en su lugar es sns.histplot y sns.kdeplot
* No hay kind, para lograr lo mismo, se debe usar el tipo de gráfico sns.kdeplot y no se incluye kind dentro del paréntesis
Por alguna razon colab no tiene registro de ningun dataset (`sns.get_dataset_names() => []`).
Pueden usar `tips= pd.read_csv('https://raw.githubusercontent.com/mwaskom/seaborn-data/master/tips.csv')`
para cargar los datasets, reemplazan `tips `por el nombre del dataset.
En estadística, KDE significa Kernel Density Estimation, que es una técnica para estimar la distribución de probabilidad de una variable continua.
Una KDE se basa en la idea de aproximar la distribución de probabilidad con una función de densidad suave. Esta función de densidad se denomina función de densidad kernel.
La función de densidad kernel se define como la suma de una serie de funciones de kernel, cada una centrada en un punto de los datos. Las funciones de kernel más comunes son la función de Gauss y la función de Epanechnikov.
La elección de la función de kernel depende de la distribución de probabilidad que se esté estimando. Por ejemplo, si la distribución de probabilidad es simétrica, se puede utilizar la función de Gauss. Si la distribución de probabilidad es asimétrica, se puede utilizar la función de Epanechnikov.
Las KDE se utilizan en una amplia gama de aplicaciones, incluyendo:
Análisis de datos: Las KDE se pueden utilizar para describir la distribución de probabilidad de una variable continua.
Visualización de datos: Las KDE se pueden utilizar para crear gráficos que muestran la distribución de probabilidad de una variable continua.
Aprendizaje automático: Las KDE se pueden utilizar para entrenar modelos de aprendizaje automático.
En el contexto de Seaborn, la abreviatura kde se utiliza para referirse a una distribución de densidad kernel. Por ejemplo, la función sns.kdeplot() se utiliza para trazar una distribución de densidad kernel.
Por lo tanto, la respuesta a la pregunta “¿Qué significa KDE?” es “Kernel Density Estimation”.
(bard told me)
Seaborn tiene una gran variedad de gráficos, pero también tiene ciertos parámetros para cada gráfico, vamos a ver cuáles son los más comunes:
Parámetros más comunes al usar Seaborn Cada uno de los gráficos utiliza ciertos parámetros que tu podrás gestionar. Empieza importando las librerías y el Dataset que vas a usar.
________________________________________
[ ]
import matplotlib.pyplot as plt
import seaborn as sns
________________________________________
[ ]
tips = sns.load_dataset("tips")
________________________________________
[ ]
tips
#aca con tips generamos un dataset con filas y columnas de que tantas propinas dan los
#clientes de un restaurante
________________________________________
[ ]
sns.get_dataset_names()
['anagrams',
'anscombe',
'attention',
'brain_networks',
'car_crashes',
'diamonds',
'dots',
'exercise',
'flights',
'fmri',
'geyser',
'glue',
'healthexp',
'iris',
'mpg',
'penguins',
'planets',
'seaice',
'taxis',
'tips',
'titanic']
________________________________________
[ ]
sns.displot(data=tips,x="total_bill")
plt.show()
#con displot genero esta grafica, identificando em el eje x el label________________________________________
[ ]
sns.displot(data=tips,x="total_bill",y="tip")
plt.show()
#al agregarle el eje y me genera una nueva grafica para poder hacer la relacion
________________________________________
[ ]
sns.displot(data=tips,x="total_bill",y="tip",hue="sex")
plt.show()
#con la fucion(hue), me hace un agrupamiento por otra variable en este caso (sex)#me da la distrubucion entre x,y (total de bip y tip), pero me lo separa si era femenino o masculino________________________________________
[ ]
sns.displot(data=tips,x="total_bill",hue="sex")
plt.show()
#con un histograma lo podemos analisar mucho mejor
________________________________________
[ ]
sns.displot(data=tips,x="total_bill",hue="sex",kind="kde")
plt.show()
#con la funcion (kind) me dice con que tipo de grafico quiero trabajar #al ser un histograma puedo trabajar con (kde) que es la misma distribucion pero por dencidad #esto se hace simplemente cambiendo uno de los parametros en este caso (kde)________________________________________
[ ]
sns.displot(data=tips,x="total_bill",hue="sex",kind="kde",legend=False)
plt.show()
#con la funcion (legend=False), no me muetra la leyenda
________________________________________
[ ]
sns.displot(data=tips,x="total_bill",hue="sex",kind="kde",legend=True)
plt.show()
#a comparacion de (legend=True) que si la muetra, esto funciona para todos los graficos ________________________________________
[ ]
sns.displot(data=tips,x="total_bill",hue="sex",kind="kde",legend=True,palette="dark",alpha=.25)
plt.show()
#tambien puedo cambiar la tonalidad de los colores con la funcion (palette), que viomos en clases anteriores
#si queremos algo mas transparente en mi grafica con (alpha)lo poedemos hacer
#asi de sencilo puedo trabajar parametro por parametro en una frafica, personalizandolo a mi gusto
________________________________________
así de fácil es trabajar con Seaborn. hay unos parámetros que voy a usar constantemente, como de dónde voy a sacar mis datos, que va a estar en el eje x o en el eje y, como lo voy a separar o como lo voy a segmentar. hay otros parámetros la leyenda, colores, el Alpha, palette y entre otros
El sitio se Seaborn esta super útil y se puede encontrar mucha información interesante y tutoriales. ME parece buena idea explorarlo para indagar un poco más en la herramienta. https://seaborn.pydata.org
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?