Justificación y contexto de tu proyecto

1

Cómo crear tu proyecto de ciencia de datos

2

Crea proyectos para afianzar tus conocimientos en ciencia de datos

3

Cada cuánto hacer un proyecto de datos

4

Dónde sacar ideas para proyectos de ciencia de datos

5

Generar y comunicar un proyecto de datos

6

Casos: personas que ya pasaron por este camino

Quiz: Justificación y contexto de tu proyecto

Ejecutando un proyecto de ciencia de datos

7

Plantea una pregunta interesante

8

Obteniendo los datos para tu proyecto

9

Ejecutando: obteniendo los datos

10

Limpieza de la información

11

Ejecutando: limpia tu conjunto de datos

12

Explora y encuentra patrones en la información

13

Ejecutando: exploración de la información

14

Ejecutando: completando la exploración de la información

15

Enriquecimiento de los datos para análisis profundo

16

Ejecutando: enriquecimiento de los datos

17

Aplicando un modelo de machine learning

18

Ejecutando: aplicando un modelo supervisado de machine learning

19

Ejecutando: aplicando un modelo no supervisado de machine learning

20

Ejecutando: aplicando un modelo no supervisado de anomalías

21

Prepara tu trabajo para comunicarlo con el mundo

22

Ejecutando: prepara tu trabajo para comunicarlo con el mundo

Quiz: Ejecutando un proyecto de ciencia de datos

Comunicando los resultados

23

Por qué es importante comunicar los resultados

24

Escribiendo tu primer blogpost técnico

25

Compartiendo en comunidad con tu primera presentación

26

Cómo mejorar tu repositorio en GitHub para ciencia de datos

27

Haciendo deploy de tus modelos

28

Construyendo una aplicación full stack que consuma tu proyecto

Quiz: Comunicando los resultados

Últimos pasos

29

Elige terminar: es mejor terminado que perfecto

30

Recuerda los objetivos del proyecto: practicar y carta de presentación

31

Comparte tu proyecto

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Explora y encuentra patrones en la información

12/31
Recursos

¿Cómo empezar a explorar tus datos?

¡Felicidades por haber limpiado tus datos! Ahora que conoces mejor tu conjunto de datos, es crucial avanzar con la exploración y el descubrimiento de patrones que te ofrecerán insights valiosos. Aquí, el enfoque metodológico y paso a paso puede marcar la diferencia entre un análisis efectivo y uno caótico.

¿Por dónde comenzar con el análisis unidimensional?

El primer paso recomendado es el análisis unidimensional de tus columnas de datos. Aquí es donde entenderás cada variable por separado:

  • Promedios: Calcular el promedio de las columnas numéricas.
  • Conteos: Determinar la frecuencia de los valores en columnas categóricas.
  • Descripciones: Obtener medidas descriptivas como máximos, mínimos y desviaciones estándar.

Con estos pasos, tendrás una imagen clara de cómo se distribuyen individualmente tus datos, lo cual es fundamental para el análisis posterior.

¿Cómo combinar y entender las relaciones bidimensionales?

Una vez que tienes conocimiento individual de tus columnas, el siguiente paso es el análisis bidimensional. Esto implica comprender cómo dos variables pueden interactuar o relacionarse entre ellas:

  • Gráficas de puntos: Úsalo para visualizar relación entre dos variables numéricas.
  • Correlaciones: Determina qué tan fuerte es la relación entre las variables.

Este análisis te ayuda a identificar patrones y tendencias importantes, y a entender mejor posibles influencias o impactos entre variables.

¿Qué se debe considerar al explorar datos?

Al explorar los datos, sigue estas recomendaciones para maximizar la eficiencia de tu proceso analítico:

  • Empezar de menos a más: Analiza una variable a la vez antes de identificar el impacto de estas en otras.
  • Impacto de categorías: Comprende cómo variables categóricas pueden influenciar otras variables numéricas y, particularmente, tu variable de respuesta.
  • Requerimiento de más datos: Si encuentras huecos en tus datos, es crucial enriquecerlos buscando información adicional.

Además de aplicar estas estrategias, ¡recuerda que siempre es útil pensar en código! Mantén el foco en el desarrollo técnico y prueba tus ideas utilizando pequeñas muestras de datos para evitar errores masivos.

¿Cómo asegurar un proceso analítico eficiente?

La regla de los dos segundos es tu aliada en este viaje. Al trabajar con grandes volúmenes de datos, asegúrate de que tu código en Python Notebook se ejecute en menos de dos segundos ajustando la muestra de datos:

  • Muestras de datos: Trabaja con fracciones pequeñas del conjunto, permitiéndote experimentar pero de forma ágil y efectiva.

Siguiendo esta metodología, evitarás cambiar de contexto o perder el hilo de tu análisis. Así podrás disfrutar y aprender del proceso, asegurando ganancias de conocimiento cada vez que vuelvas al tema.

Si sientes que necesitas más práctica o fortaleza en esta área, ¡explora recursos adicionales como cursos que ofrece Platzi en análisis exploratorio de datos! No solo profundizarás tus habilidades, sino que ganarás la confianza necesaria para enfrentarte a desafíos de datos en el futuro.

Aportes 9

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

El EDA es para conocer los datos que tenemos 📊

Y es que puede pasar que luego de haber recolectado información aún nos haga falta para responder nuestra pregunta. El EDA (Exploratory Data Analysis) entonces nos hace ver lo que tenemos y lo que podemos hacer con los datos.

¿Y cómo podemos podemos hacer un EDA?

Ve de lo más pequeño a lo más grande. Y de lo más general a lo más específico.

Un buen inicio es hacer una breve descripción estadística de nuestro dataframe usando df.info(). Luego pasa al análisis univariable, bivariable y multivariable. Además, recuerda que necesitas mucha visualización de datos.

Análisis univariable

Aquí buscas entender lo que representa cada variable (columna) por sí sola. Puedes usar distribuciones o histogramas.

Análisis bivariable

En este caso, tu objetivo es entender la relación entre dos variables de interés. Puedes usar distribuciones e histogramas, pero ya añades un hue según necesites. Las correlaciones son muy usadas también.

Análisis multivariable

Ahora ya necesitas entender la relación entre 3 o más variables.


Toma el Curso de Análisis Exploratorio de Datos para entender más.

El curso de Análisis Exploratorio de Datos deben reestructurarlo completamente, fue muy lamentable el curso a diferencia de otros que hay en el learning path de Data Science y esto lo digo con mucha pena.

df.memory_usage( )

Devuelve la cantidad de memoria que utiliza cada columna en bytes. Es útil especialmente cuando trabajamos con grandes dataframes.

Les dejo dos funciones imprescindibles para que puedan visualizar y luego optimizar el tamaño en memoria de su dataset.

memory_usage = df_data.memory_usage(deep=True) / 1024 ** 2
memory_usage.loc['total'] = memory_usage.sum()
memory_usage = memory_usage.to_frame(name="memory usage of variable (MB)")
memory_usage.style.bar(subset=["memory usage of variable (MB)",], color='#ee1f5f', axis=0).format("{:.6f} MB")
def reduce_memory_usage(df, verbose=True):
    numerics = ["int8", "int16", "int32", "int64", "float16", "float32", "float64"]
    start_mem = df.memory_usage().sum() / 1024 ** 2
    for col in df.columns:
        col_type = df[col].dtypes
        if col_type in numerics:
            c_min = df[col].min()
            c_max = df[col].max()
            if str(col_type)[:3] == "int":
                if c_min > np.iinfo(np.int8).min and c_max < np.iinfo(np.int8).max:
                    df[col] = df[col].astype(np.int8)
                elif c_min > np.iinfo(np.int16).min and c_max < np.iinfo(np.int16).max:
                    df[col] = df[col].astype(np.int16)
                elif c_min > np.iinfo(np.int32).min and c_max < np.iinfo(np.int32).max:
                    df[col] = df[col].astype(np.int32)
                elif c_min > np.iinfo(np.int64).min and c_max < np.iinfo(np.int64).max:
                    df[col] = df[col].astype(np.int64)
            else:
                if (
                    c_min > np.finfo(np.float16).min
                    and c_max < np.finfo(np.float16).max
                ):
                    df[col] = df[col].astype(np.float16)
                elif (
                    c_min > np.finfo(np.float32).min
                    and c_max < np.finfo(np.float32).max
                ):
                    df[col] = df[col].astype(np.float32)
                else:
                    df[col] = df[col].astype(np.float64)
    end_mem = df.memory_usage().sum() / 1024 ** 2
    if verbose:
        print(
            "Mem. usage decreased to {:.2f} Mb ({:.1f}% reduction)".format(
                end_mem, 100 * (start_mem - end_mem) / start_mem
            )
        )
    return df

df_data = reduce_memory_usage(df_data, verbose=True)

Empece a encontrar patrones en el tránsito y la verdad es que me llena de alegría ver cómo se comporta el transporte automovilístico en la ciudad de Montevideo, Uruguay:

import pandas as pd
import matplotlib.pyplot as plt

# Análisis bivariable de 'cobertura_bruta' y 'cobertura_neta'
plt.scatter(data_limpia['cobertura_bruta'], data_limpia['cobertura_neta'])
plt.title('Relación entre Cobertura Bruta y Neta')
plt.xlabel('Cobertura Bruta')
plt.ylabel('Cobertura Neta')
plt.show()

Este código representa los valores de ‘cobertura_bruta’ en el eje xy ‘cobertura_neta’ en el eje y. Observar la dispersión de puntos en un gráfico de dispersión puede proporcionar una idea inicial sobre la relación entre estas dos variables.

Además del gráfico de dispersión, existen varias técnicas de análisis bivariable que podrían ser aplicadas dependiendo de las variables que desees analizar. Estos incluyen tablas de contingencia, coeficientes de evaluación, gráficos de líneas, histogramas, entre otros, para explorar la relación entre diferentes pares de variables en tu conjunto de datos.

sos genial señor Ricardo

EL GOOGLE COLAB LO CORRE MUY BIEN

me enamore del profe muy lindo curso carajos, lo demas es solo para llenar