Ironhack-Data-Madrid-Octubre-2021 / W3-pipelines-project

0 stars 6 forks source link

[Pipeline Project] Juancho VPA #15

Closed juanvpa closed 2 years ago

juanvpa commented 2 years ago

https://github.com/juanvpa/Unicorn.Companies_Second.Proyect

Fominayasg commented 2 years ago

Buenas Juancho!! :unicorn:

El objetivo de este proyecto era ser capaces de crear un pipeline. Es decir, una secuencia de procesos que se ejecutaran en orden para que ,en nuestro caso, desde un dataframe original obtener otro limpio y enriquecido.

Ahora vamos a ir viendo los diferentes componentes de tu proyecto.

Readme

El readme está bastante bien organizado y explicado, pero te falta el technology stack, y la organización del repo (para que sea más fácil seguirlo, pero esopcional) y el formato no termina de ser claro.

Creo que algo así es más intuitivo:

># **GLOBAL UNICORN COMPANIES ANALYSIS**

![aquí había una imagen de un unicornio](unicorn_1.png.crdownload)

>### **GOAL**

 The goal is to clean and analyze this [DataFrame](https://www.kaggle.com/kaustubh93/list-of-700-unicorn-companies-across-the-globe) containing all the Unicorn Companies.

-  Define some hypotheses that will help me focus on the objective.
-  Clean the dataset acordingly & add some extra information from an API/Web Scrapping
-  Display some interactive data visualization that will help me to contrast them.

>### **HYPOTHESES**

-  For the last four years, the industry with the highest number of Unicorns has been "Fintech"
-  2021 was the year with the highest number of Unicorns
-  San Francisco, USA is the city with the highest number of unicorns in the world 
-  The countries with the highest number of Unicorns coincide with the world's top universities

>### **DATA VISUALIZATION & CONCLUSIONS**
 ##### **Hypothesis 1: For the last four years, the industry with the highest number of Unicorns has been "Fintech"**

-  Correct, the highest number of Fintech Unicorns appears during 2021
-  Top 5 Industries (Fintech | Internet Services | E-commerce | Artificial Intelligence | Health) 

 ##### **Hypothesis 2: 2021 was the year with the highest number of Unicorns**

-  Correct, 2021 was the year with the highest number of Unicorns
-  Top 5 years (2021 | 2019 | 2018 | 2020 | 2017)

 ##### **Hypothesis 3: San Francisco, USA is the city with the highest number of unicorns in the world**

-  Correct, the highest number of Unicorns were born in San Francisco
-  Top 3 cities (San Francisco | New York | Beijing)

##### **Hipothesis 4: The countries with the highest number of Unicorns coincide with the world's top universities**

-  Correct, for the first two cases
-  Top 5 Unicorn countries (USA | China | India | UK | Germany)
-  Top 5 Universities countries (USA | China | Japon | UK | France)
-  Japan & France doesn´t match with the top universities

# # Y te quedaría así:


GLOBAL UNICORN COMPANIES ANALYSIS

aquí había una imagen de un unicornio

GOAL

The goal is to clean and analyze this DataFrame containing all the Unicorn Companies.

HYPOTHESES

DATA VISUALIZATION & CONCLUSIONS

Hypothesis 1: For the last four years, the industry with the highest number of Unicorns has been "Fintech"
Hipothesis 4: The countries with the highest number of Unicorns coincide with the world's top universities

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](www.link_a_tu_archivo_py.es)"

Y te quedaría asi:

In this project we have used the following libraries:

Gitignore Se te han colado un montón de archivos temporales en el repo que es mejor no subir porque no aportan valor pero ocupan espacio.

Y el .env es un archivo que contiene información de configuración que no deberías subir!!!! (C. aña gratis por aqui :beer:)

procura incluir en él siempre :

y cualquier otro archivo que no sea necesario.

Es importante que incluyas esto archivos en el gitognore lo primero de todo para que no se suban nunca. Si te te suebn una vez y los incluyes en el .gitignore a posteriori no funcionará.

Estructura del repo

La página principal debe estar lo más limpia posible. Mis recomendaciones son:

  1. Meter los jupyter notebooks en una carpeta llamada notebooks. También es interesante numerarlos para que cuando alguien vea tu repo sepa cual mirar antes o después. La idea es que los jupyter sean tus pruebas de código y que luego lo juntes todo en main.pypara crear el pipeline.

  2. Si tienes imágenes ya sea porque quieres ponerla de portada o porque has exportado gráficos, las puedes meter en una carpeta llamada images. O incluso en data.

Cleaning

En tu archivo cleaning.py te falta documentar la última función. Acuérdate de hacerlo por sencilla que sea la función!!

Aunque tu dataset parece estar bastante limpio, sería interesante que limpies un poco más alguna cosilla. Por ejemplo:

Por otro lado cuando exportes un csv, si le añades el atributo index=False, no se incluirá el índice. Y asi te evitas que al mportarlo después te parezca la columna unnnamed.

Enriquecimiento y visualización

Tu archivo de funciones está vacío así que deduzco que no te dió tiempo a pasar las funciones al punto py.

En el jupyter deberías haber sólo visualización y conclusiones pero tienes incluido el scrapping de las universidades.

Esto debería estar separado en otro jupyter. Y cuando hagas las funiones, estas también deben tener su propio .py

Alguna celda da error y no hace falta para el código, bórralas porque te ensucian el jupyter y no aportan valor. Los proyectos tienen que estar en general lo más limpios posible.

En cuanto a la visualización tienes gráficos bastante interesantes. En la primera hipótesis quiza habría elegido un line plot para mostrar el número de unicorns por año y tipo de empresa ya que poniendo los años en el eje X creo que es más intuitivo a la hora de poder ver la evolución. Asignando una línea diferente a cada tipo de empresa.

En general este último jupyter está bastante desorganizado, intenta ordenarlo y comentar los gráficos para que quede mejor.

Pipeline

Por último de cara a cuando tengas tiempo para revisar este proyecto, la idea es que todos los procesos que llevas a cabo en los jupyter los pases a funciones en sus .py correspondientes y luego vayas llamando a esas funciones en el main.py.

Cuando ejecutes main.py debería coger tu dataset descargado, hacer el scrapping y meterlo en un dataset/csv o whatever para obtener al final tener una visualización de los datos limpios y enriquecidos.

Sé que tuviste muchos problemas con los datos de las universidad y con como obtenerlos pero te falta terminar de encajar el proyecto.

Si tienes alguna duda cuando te pongas a hacerlo, no dudes en preguntarnos.