Hice los gráficos de barras iterando las columnas categóricas mediante la variable category_cols, que me guarda los nombres de las columnas.
Del mismo modo, para visualizar la proporción, usé sns.histplot, puesto que displot no dispone del parámetro 'ax'.
Buen código, bro!!
Muy buen aporte compañero, muchas gracias
Dejo un interesante aporte para ver las proporciones de las especies que existen por isla y así visualizar cuál especie es más predominante en general y por isla.
Me gusta tu aportacion, es facil ver que hay pinguinos que solo se dan en ciertas islas y el Adelie que sale en todos lados jajaja.
Estaria bueno ver si el Adelie siempre es el de mayor presencia en cada isla
Use .assign(x=’ '), la librería pandas se acuatizo y ya no usa add_colums
No sé si sea mi versión de python o pandas pero a mí me aparece cómo que no existe el método pandas.add_column, revisé la documentación y tampoco aparece, solo encontre pandas.assign que es para agregar nuevas columnas a un Data Frame.
RECUERDEN, SIEMPRE LEAN LA DOCUMENTACIÓN
llegaste a solucionar el problema tengo el mismo ?
usar .assign() es lo correcto, más adelante en el curso tambien lo ocupa. Solo debes desempaquetar un diccionario:
( df
.assign(**{'x':'',}).pipe( lambda df:()))
Gráfica de especies por sexo y por isla
Comandos para conteos y proporciones
describe. Describe el conjunto de datos mediante estadísticos descriptivos
preprocessed_penguins_df.describe(include='all')# all implica que tome las variables tanto numericas como categoricas# [np.number] ó describe() toma en cuenta solo variables numericas# object considera solo variables categoricas
Convertir variables tipo object en category. Esto agrega nuevas funcionalidades en cuanto al manejo de la variable
# definir variables de tipo category( preprocessed_penguins_df
.astype({'species':'category','island':'category','sex':'category'}))
Visualizar los conteos con pandas
( preprocessed_penguins_df
.species
.value_counts()#cuenta el numero de cada especie.plot( kind='bar'#grafica el conteo de cada especie))
( preprocess_penguins_df
.add_column('x','')#añade columnas vacias al df.pipe(lambda df:( sns.displot( data=df, x='x', hue='species', multiple='fill',# lo muestre en proporcion palette=penguin_color
))))
9. Explorando una variable categórica: conteos y proporciones
Tabulación
“Contabiliza la frecuencia de aparición de cada valor único de una variable”
Proporciones
“Relación de correspondencia entre las partes y el todo”
Extendiendo la idea de conteo
Tabulación cruzada o tablas de contingencia.
Explorando una variable Categórica: Conteos y Proporciones
Tabulacion. Consiste en contabilizar la frecuencia de aparición de cada valor único de una variable. Los conteos y proporciones se basan en la tabulacion
!
Estas tres formas son las mas comunes de presentar un conteo: Datos ordenados, Tablas y Grafica de barras
Proporciones. Es la relación de correspondencia entre las partes y el todo
!
Así la distribución de observaciones por Isla:
Este es mi aporte, un grafico de tortas o pie chart que permite ver la proporción de pingüinos por isla:
En cursos anteriores dicen que es la mejor forma de mostrar porcentajes cuando no son muchas categoria, y la verdad que si es mucho mas intuitivo.
Hay un error en el notebook del curso dejado en deepnote, en la variable de colores de los pinguinos:
Se que ambos dan el mismo resultado, pero en el curso anterior de Analisis exploratorio de datos, la instructora indico que ella preferia hacerlo de la primera manera indicada ya que como que permitia otras cosas y que tambien con la segunda opcion podia no resultar claro al hacer uso de clases.
Se que se acostumbra es usar la primera, pero queria saber si hay ventajas de la segunda por sobre la primera.
Cuando el nombre de la columna (variable) es una sola palabra no hay diferencia entre los dos, pero cuando el nombre de la columna son dos palabras separadas por un espacio (ejemplo: "salario anual") lo debes hacer por paréntesis rectos df['salario anual'].
Cuales son las cosas interesantes que permite hacer python cuando volvemos convertimos nuestras variables a tipo 'category'?
Esta es la documentacion del tipo de dato category
Resumen
The categorical data type is useful in the following cases:
A string variable consisting of only a few different values. Converting such a string variable to a categorical variable will save some memory, see here.
The lexical order of a variable is not the same as the logical order (“one”, “two”, “three”). By converting to a categorical and specifying an order on the categories, sorting and min/max will use the logical order instead of the lexical order, see here.
As a signal to other Python libraries that this column should be treated as a categorical variable (e.g. to use suitable statistical methods or plot types).
Si alguien tuvo problema con el comando add_colums de esta manera losolucione :