Ironhack-Data-Madrid-Octubre-2021 / w2-pandas-project

0 stars 2 forks source link

[Blanca Vispo] Pandas project #19

Closed bvispo closed 2 years ago

bvispo commented 3 years ago

https://github.com/bvispo/Proyecto-Pandas-data-cleaning

Fominayasg commented 2 years ago

Buenas Blanca :smile:!!

A ver qué tal ese proyecto!!

Vamos a echar un ojo a las diferentes partes del proyecto, y si hay alguna parte de la corrección que no comprendes, no dudes en preguntarme.

README file

Como ya sabes el readme es vuestra carta de presentación y por tanto es importante prestarle atenció.

Este readme está un poco caótico.

Puedes tener en cuenta lo siguiente:

  1. Utilizar el formato markdown. Aquí está una guía de como escribir en markdown.Es importante utilizar títulos, bullet points, listas, etc. Le dará un aspecto mucho más profesional al readme.
  2. Ordénalo en secciones. (Contexto resumido, objetivo del proyecto, organización del repo y tecnologias utilizadas).
  3. En este caso está bien incluir las hipótesis qe quieres demostrar y si lo crees conveniente las conclusiones.

Para las tecnologías utilizadas, te recomiendo que incluyas los links de está manera:

In this project we have used the following libraries:
 - [pandas](https://pandas.pydata.org/docs/)

 - [numpy](https://numpy.org/doc/stable/)

 - [plotly](https://plotly.com/python/)

 - [seaborn](https://seaborn.pydata.org/)

 - our own "[cleaning_functions.py](https://github.com/aromegar/SharkAttack/blob/main/src/cleaning_functions.py)"

Y te quedaría asi:

In this project we have used the following libraries:

Organización del repo

La organización del jupyter está genial, con su carpeta src con los archivos de funciones y los jupyters numerados.

Código: Cleaning

Muy bien organizado y comentado, has importado tus funciones de limpieza desde el .py como te pediamos asi que genial!

En la limpieza de la columan sex, repites mucho código. Puedes hacerlo utilizando un diccionario poniendo como keys lo que quieres cambiar y como value el str por el que lo quieres sustituir. Aquí puedes encontrar varias maneras de hacerlo.

Puedes utilizar la misma técnica para "FATAL Y/N" o utilizar regex.

En cuanto a las funciones de limpieza, me parece genial que te hayas pegado tanto con Regex!! Se lo voy a enseñar a Ana para que se pnga contenta !!

Las funciones están muy bien comentadas, aunque en cleaning countries has puesto el docstring fuera de la función. Ojo con las erratas en algunos docstrings, aunque entiendo que como no te funcionan la mitad de las teclas... es complicado jeje

En la función de countries si en vez de muchas listas haces un diccionario donde las keys sean los continentess y los values la slistas de países. Te puedes ahorrar todos esos elifs. Quedaría algo así:

countries_dict = {"Africa":["AFRICA","ALGERIA","ANGOLA"],"Europe":["EUROPE","ALBANIA","ANDORRA","ARMENIA","AUSTRIA"]...etc]} #aqui pones el diccionario completo

def clean_country(string):
    for key, values in countries_dict.items():
        for value in values:
            if string in value:
                return key

A la hora de limpiar los años, el código de la función está bien, pero crees que es útil tener los datos desde 1543?? crees que serán fiables? tienes la misma cantidad de datos durante los primeros siglos que en el siglo 20???

Son preguntas de concepto que es importante que te hagas como data analyst.

Código: Visualizaciones

Lo primero de todo genial que hayas comentado bien todos los gráficos. Es muy importante dejar la conclusión por escrito por si quien vea tu trabajo no puede entender los gráficos.

Primera hipotesis

Aunque el barplot nos permite ver la cantidad de hombre y mujeres que han tenido ataques mortales frente a ataques no letales, no me sirve para comparar la proporción de ambos. Es decir no puedo distinguir si hay menos ataques letales a mujeres porque es menos probable que mueran o si es porque hay menos mujeres en general.

Quizá sería mejor hacer un piechart para hombre y otro para mujeres y asi ver la proporcion de mortalidad en unos y otros.

Segunda hipotesis

Genial explicado Blanca, y los plots muy acertados. Lo único es que el último plot se ve un poco pequeño y no se termina de apreciar bien.

Tercera hipotesis

En esta hipótesis el gráfico tiene varios fallos. El primero es que las edades no están ordenadas... por lo que no se pueden comparar franjas de edad.

Por otro lado si quieres comprobar que las personas en la treintena son las más atacadas, lo suyo sería plottear los valores acumulados por franjas de edad. Es decir, si usas un barplot, una barra que represente la suma de valores de 0 a 9, 10 a 19, 20 a 29, 30 a 39 etc. Poniendo las edades por separado puede suceder que haya 3 personas de 34 años que hayan sido atacadas pero ninguna de 36 o 37.

Conclusiones finales

Está genial poner algunas frases cortas al final del jupyter para resumir y que el lector se quede con una idea completa de lo que has hecho (camba los detalles que te he especificado en los diferentes apartados y lo dejás perfectísimo).

En general el proyecto está bien, sigue trabajando a tope que ya no queda nada.

¡Vamooos que esto pasa muy rápidoo!

:rocket: :rocket: :rocket: