Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Inspección cuantitativa y de salud de los datos

13/32
Recursos

Aportes 71

Preguntas 8

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Con respecto a la obtención de las columnas según el tipo de datos que contienen: Podemos ahorrarnos estos pasos usando el siguiente método

movies_nums = movies.select_dtypes(exclude=['object'])
movies_obj = movies.select_dtypes(include=['object'])

Creando directamente el DataFrame con los datos que nos interesan. Espero les sirva de ayuda 😄

Para quienes no encuentren el .csv de thenumbers.com está en la clase número 13 en la sección de Archivos y Enlaces (lo escribo porque me pasó jajaja)

Si quieren ver una explicación de Web Scraping, el profesor @jdaroesti en la clase 41 del curso de Python lo explica.

me hubiese gustado que explicaras como solucionaste el problema de las monedas en profundidad

No es necesario separar las columnas numéricas de las de texto para obtener la información del describe(). Cuando utilizan esta función, automaticamente se toman las columnas numéricas y se puede especificar para que haga en todas las columnas pero con restricciones de resultado en las columnas de texto.

movies.describe() # solo realiza la descripción del DataFrame sobre columnas numéricas
movies.describe(include='all') # realiza la descripción sobre todas las variables.

Un histograma es una representación gráfica de una variable en forma de barras, donde la superficie de cada barra es proporcional a la frecuencia de los valores representados.
De esta forma podemos revisar columna a columna, si los datos son normales o encontramos algún error, como el ejemplo de Budget en yenes.

Boolean Filtering es una técnica que se usa para detectar errores, consiste en crear una serie de booleanos con el mismo indice de nuestro DataFrame, donde los True cumplen una condición dada, y de estos se pueden extraer los datos que se salen de la lógica y proceder a investigar uno por uno el porque y corregirlos si es el caso.

Si se quiere hacer de una manera más pro

<
movies_num['log_budget']=np.log(movies_num['budget'])
movies_num['log_budget'].hist()
>

No sé si a alguien más le pasó, pero cuando pongo “movies (mask)” me sale que el DataFrame no se puede llamar, ya revisé toda las líneas anteriores y todo esta normal, no había fallado nada hasta este momento.
¿Alguien sabe como solucionarlo?

Cuando usaste el debug usaste “mask = (movies_num[‘budget’] > le9)” Minuto 6:44
¿Porque le9 significa 1billon?¿Si puedes agrega mas referencias a este uso?.
Muchas gracias.

para los histogramas de todas las columnas numericas ->

movies_num.hist()

Si se va hacer captura del video para verlo despues off-line en mi PC, se corta cada 5 minutos, ¿sera que eso no esta permitido hacerlo?

La variable necesita una transformación , cuando pasa este tipo de casos lo mejor es transformarla en Logaritmo Natural

budget_log=np.log(movies_num['budget'])
budget_log.hist()

Excelente explicación, hay algun curso de web scraping en platzi?’

Scrapping 😃

**Que genial, cada vez se pone mas interesante. **

Muy buena esta clase…

Para saber más sobre los metodos vistos en la clase pueden visitar estos blos: describe y hist. Además, en kaggle pueden encontrar multiples datasets.

Pandas permite trabajar con los datos como una hoja de calculo, podemos incluso añadir una nueva columna y asignarle datos nuevos a nuestro dataset.
.
.hist() es una función de matplotlib que permite graficar un histograma con datos numéricos.

# mostrar el movie_title, year, country y budget de las peliculas con mayor presupuesto
movies[movies['budget'] > 1e9][ ['movie_title', 'title_year', 'country', 'budget'] ] 

# con anterior me declaro fanatico de pandas. ```

#filtra y muestra solo los índices True, de las columnas ‘movie_title’ y ‘budget’

movies[mask].loc[:,['movie_title','budget']]

Excelente este profesor!!! Que vengan muchos cursos de él!

gracias!

Excelente!!

Interesante que nos haga caer en cuenta sobre que los datos desde que se estan capturando debe que vengan lo mas organizados y homogenos posibles, para evitar reprocesos

A limpiar se dijo!!!

Me encanto

La distribución de la riqueza en mi país, seria igual a la del presupuesto de las películas antes del filtro.

Por si desean graficar todos los histogramas al tiempo, para la fase de comprensión de los datos.

movies_num.hist()
plt.show()

Saludos.

lo ideal fuese haber corregido sin el scraping haber como se solucionaba

No sé qué tiene esta clase (la 15) que se demora como 20 minutos para ser abierta en el navegador, y cada que se le da pantalla completa o algo se cae el navegador. De la 14 hacia atrás va normal, y de la 16 en adelante igual.

Aprendiendo

  • El método describe entrega una información estadística de las columnas del dataset, si es numérica.
  • Debemos tener mucho cuidado con las bases de datos que recibimos, pues por lo general hay que verificar su validez, y limpiarlas dado los casos.

Sencillo y optimo el proceso de preparacion de datos con python!, tuve experiencia de realizar años atras ese preparacion de otra manera y era muy manual comparado con el visto en este video.

muchísimas gracias profe, entendí , vacano.

Genial… muy buen tema… se explica bien …

Me parece muy bueno como generar una gráfica mediante un comando.

Web scraping es una técnica utilizada mediante programas de software para extraer información de sitios web. Usualmente, estos programas simulan la navegación de un humano en la World Wide Web ya sea utilizando el protocolo HTTP manualmente, o incrustando un navegador en una aplicación.

Alguien tiene un ejemplo del scrapping?

Muy interesante conocer que los datos deben limpiarse siempre para trabajar de manera más amena.

Hubiese sido bueno hacer el scrapping.

No se realizo el web scrapping porque no corresponde a este material de estudio, pero si hubiera sido bueno ver como se hace la limpieza manual de los datos del cambio de moneda.

excelente expliación!

Interesante clase

Este curso está buenísimo ! Se empieza a ver la importancia de entender métricas estadísticas para hacer ML. Cualquiera puede hacer un .fit y un .predict pero saber identificar cuándo y por qué los datos presentan anomalías es algo que requiere análisis de todo lo visto anteriormente! Muy emocionada por el resto del curso.

Se ve tan fácil que da miedo.
Será que en un ambiente real de producción el flujo de trabajo es así ?

Este curso me está gustando mucho por lo practico y facil de entender.

Excelente clase!

Es importante la salud de los datos, esto con el fin de que no produzcan ruido.

Para cargar el archivo thenumbers.csv desde github

pd.read_csv('https://github.com/JuanPabloMF/datasets-platzi-course/blob/master/datasets/thenumbers.csv?raw=true', encoding='utf-8');

¿Qué regla de construcción de histograma usa la API de pandas?

Se puede agregar una columna o cálculo que identifique monedas y tome tasas de cambio?

Un concepto importante en esta parte es el tidy data y las diferentes herramientas para hacer limpieza de datos y que no suceda lo que pasó en este ejemplo.

movies_num=pd.concat([movies_num,movies['movie_title']],axis=1)#Concatena la columna movie title```
movies.columns```
#Los datos faltantes generan problemas con muchos algoritmos de ML. Es por esto que existen distintas estrategias para lidiar con ellos.
movies_v2.notnull().apply(pd.Series.value_counts)```
#como acceder a una columna
columna1=movies['movie_title']
columna1.head()```
#como acceder a una linea
linea=movies.loc[10,:]
linea```
movies.loc[:,'movie_title']```
# columnas númericas y columnas de texto
movies.dtypes==float```
#Estadisticas de las columnas de text
#Para hacer el primer modelo se trabajara con las columnas numericas
movies_num['duration'].hist()```
movies_num['imdb_score'].hist()```
movies_num['budget'].hist()```
mask=(movies_num['budget'] > 1e9)
movies[mask]```
#importar los datos desde thenumbers.com, es para quitar las columnas que no sirven
pd.read_csv('https://github.com/JuanPabloMF/datasets-platzi-course/raw/master/datasets/thenumbers.csv')```

se muestran los histogramas de todas las columnas

movies_num.hist()

Este método nos da información sobre:
Count: cantidad de información
Mean: Promedio
Std: Desviación estándar
Min: mínimo
25%, 50%, 75% son los cuartiles
Los cuartiles son valores que dividen una muestra de datos en cuatro partes iguales
25% de los datos es menor que o igual a este valor.
La mediana. 50% de los datos es menor que o igual a este valor.
75% de los datos es menor que o igual a este valor.
Max: máximo