Closed Unaiat closed 3 years ago
Holaaaaa Unai 🙋♀️. Vamos a por el proyecto de este finde! 🔥🔥
El readme esta perfecto Unai, la verdad es que no tengo nada que decirte! Muy buen trabajo en esta parte
La estructura del repo:
Suuper no se te paso ningún fichero raro, y los tokens están en el .gitignore
👏👏
Los jupyters muy bien documentados y las funciones con sus docstrings 🔥 👏
Por ponerme tiquismiquis, si a los ficheros de jupyter les pones un número para indicar el orden en que se van ejecutando te queda perfecto!
Suuper bien la estructura Unai 🔝
Vamos con la parte de sintaxis del proyecto:
Tienes tres jupyters, uno para cada ciudad, pero que en realidad los tres tienen el mismo código. ¿Qué podemos hacer?
1. Select the relevant offices from the database
Te puedes crear una función con todo este código:
Cuando seleccionas algunos tipos de empresas:
#tienes este código
df_berlin_categories = df_berlin[(df_berlin['category_code'] == "web") | (df_berlin['category_code'] == "games_video") | (df_berlin['category_code'] == "design") |(df_berlin['category_code'] == "ecommerce") |(df_berlin['category_code'] == "mobile") |(df_berlin['category_code'] == "social")]
# creo que podrías hacer esto y lo simplificaras el código
df_berlin[df_berlin["location"].isin(["web", "games_video", "design", "ecommerce", "mobile", "social"])]
2. Make the geoqueries
Puedes atomizar el código de esta parte, para no tener que ejecutar el mismo código para cada una de las parámetros de foursquare.
query = ["Theater", "Starbucks", "Basketball Stadium", "Preschool", "Nightlife Spot", "Movie Theater", "Gym / Fitness Center"]
make_call
for i in query:
london = make_call(company, i)
# de esta forma se te almacenarán todos los resultados de las queries para london en la variable london.
🟠 Lo mismo puedes hacer para las funciones de make_df
y check_near
. Las funciones PERFECTAS!!
En la función make_df
te creas tres lista vacías (name, latitude y longitude) que luego no vuelves a usar en toda la función
En la función de score
, tienes el mismo código repetido 8 veces. Esto se podría atomizar. Lo puedes hacer creando un diccionario donde las keys son los parametros que elegiste y los values los pesos que le das a cada uno de ellos.
Tengo poco que decirte aquí, sobre todo que atomices esas funciones para que no repitas tanto algunas estructuras de código.
Siendo data analysts tenemos que garantizar que las decisiones que tomamos se basan en lo que trabajamos, tu has utilizado las ponderaciones, lo que está perfecto. Enhorabuena Unai, hiciste un gran trabajo en este proyecto!!! 🚀🔥 Sigue asiiiii
https://github.com/Unaiat/Geospatial_data_project