Closed diegodiazgarciadev closed 3 years ago
Hola Diegoo 🙋🏻♀️ vamos con las correcciones del primer proyecto del bootcamp
Suuuper buen trabajo en el readme Diego. Te dejo por aquí un par de comentarios con unos detalles para el futuro:
Dado que no podíamos subir el dataset al repo, lo que podrías haber añadido es un link a la pagina de kaggle para poder descargarlo
Al final del readme siempre esta bien añadir una lista con las librerias que has usado en el proyecto y poner el link a la documentación ofical.
Vamos con la estructura del repo 💪. En general el repo esta muy bien organizado. Cosas importantes como no dejarte ningún archivo temporal o no meter el dataset de kaggle están en el .gitignore
Ya sabes que siempre hay algún detallito que os puedo comentar 😜
csv
y así no los tienes "sueltos" por el reponotebooks
. Aunque no sea un tema de código, tienes dos jupyters en el primero tienes una limpieza general y en el segundo la visualización y más limpieza. Lo ideal hubiera sido que la limpieza específica de las columnas la hicieras también en el primer jupyter.
Alguna recomendación sobre las gráficas:
Cuando limpias la columna de las especies, tu código esta perfectito.
Solo como reto para la próxima también podemos trabajar con diccionarios, lo cual nos lo facilitará un poco evitando escribir múltiples condiciones.
¿Cómo lo podríamos hacer?
def species2 (col):
diccionario = {
"white" : re.findall(r"w?W?hite shark*", str(col)), #avitando poner la palabra sharks en nuestro regex la búsqueda será mucho más amplia y seremos capaces de capturar más valores.
"tiger" : re.findall(r't?T?iger shark', str(col)),
"lemon" : re.findall(r'l?L?emon shark', str(col)),
"bull" : re.findall(r'b?B?ull shark', str(col)),
"grey" : re.findall (r'r?R?eef shark', str(y))
}
# despues lo que hacemos es interar por el diccionario
for k,v in diccionario.items():
# si encuentra un value en el diccionario me devuelves la key del diccionario
if v == True:
return k
else:
# si no me devuelves "other species"
return "other species"
En la parte de visualización, el código que tienes para los mapas lo repites múltiples veces, variando la columna sobre la que quieres hacer el mapa. Una cosa que podemos hacer aquí para evitar todas las repeticiones es crear una función para sacar el mapa
# lo se puede hacer es pasarle a la función los parámetros que se van cambiando. Como el df, el hover_name
def mapas(df, hover, col_color):
fig = px.scatter_geo(df,
lat="latitude",
lon="longitude",
hover_name= hover,
color =df[col_color],
opacity = 0.3,
width=700, height=500 )
fig.update_layout(height=300, margin={"r":0,"t":0,"l":0,"b":0})
return fig.show()
En general muy buen trabajo en este primer proyecto Alejandro 💪! Has sobrevivido al primer proyecto y lo has hecho genial!! En este proyecto hemos interiorizado como trabajar con pandas y cual es el principal proceso de limpieza de un dataset.
Te dejo por aquí un par de comentarios que podrías retocar para los próximos proyecto 😉
Issue created