Logo Studenta

Clase 25 - Data Acquisition I

¡Este material tiene más páginas!

Vista previa del material en texto

Data Acquisition I 
 Clase 25. Data Science
Obligatoria siempre
¿DUDAS DEL ON-BOARDING?
MIRALO AQUI
Obligatoria siempre.
RECUERDA PONER A GRABAR LA CLASE
Colocar todas las clases
Identificar el ciclo de vida de un proyecto de ciencia de datos.
Rastrear el origen de los datos y su uso.
Leer datos con Pandas. 
OBJETIVOS DE LA CLASE
Obligatoria siempre. Es lo que queremos alcanzar una vez finalizada la clase. Recordá que se enuncian en principio con el verbo delante (por ejemplo: “Comprender…”, “Analizar…”, “conocer…”, etc).
MAPA DE CONCEPTOS
MAPA DE CONCEPTOS 
Comprensión y Adquisición de Datos
Modelado
Despliegue
Entendimiento del caso de Negocio
Limpieza y Preparación de los Datos (Data Wrangling )
ITERAR
Evaluación
Se puede usar para comenzar o finalizar la clase, según sea más conveniente. La información de este slide es de relleno. 
Recurso: Mapa de conceptos
Muestra rápidamente los contenidos de la clase y cómo se relacionan. Ayuda a los estudiantes a evitar “perderse” durante la clase, al avanzar en un sentido lineal una diapositiva tras otra. El ejemplo pertenece a la primera clase del curso UX/UI.
Sugerencia: 
-También se pueden mostrar con un menor énfasis o colores apagados, aquellos contenidos de clases anteriores y que se vinculen con la actual. 
-Resaltar con color los temas que se abordan en la clase.
Clase 25
Data Acquisition I
LECTURA DE ENCUESTAS TXT CON BOOLEANOS.
Clase 24
Stack Tecnológico II
Clase 26
Data Acquisition II
CRONOGRAMA DEL CURSO
LECTURA DE CSV.
BIG DATA
ETL
BIG DATA & ETL
ACCEDEMOS A BASE DE DATOS SOBRE PANDAS.
LEER UNA BASE DE DATOS
Recurso: Cronograma del curso
- Se muestra al inicio de cada clase 
- Tiene un aspecto similar a un calendario.
- Resume rápidamente: título de la clase, número y contenidos que abarca
- Guía rápida tanto para docentes, como para estudiantes.
- Para mayor ubicación en el curso, también muestra en un tamaño más pequeño lo sucedido la clase anterior y la siguiente.
-Ubicar en el interior de cada clase aquellas cuestiones destacadas con las cuales se encontrará el alumno y con su respectivo nombre: desafíos, entregables de proyecto, actividades colaborativas o ejemplos en vivo.
Introducción a la adquisición de datos
Comprensión del problema
Usar para los subtemas de un módulo.
Antes de ir a buscar datos es muy importante tener el problema de negocio y una noción de cómo resolverlo.
Entendimiento del caso de Negocio
No va, es para guiar el uso del template.
¿Qué problema quiero solucionar?
¿Qué tipo de datos necesitamos para hacer el análisis?
¿Dónde puedo encontrar estos datos?
¿Cómo accedo a estos datos?
¿Esos datos existen?
Punto de partida
El objetivo principal es crear modelos predictivos, capaces de detectar las futuras necesidades del cliente o qué productos se venderán mejor.
Las empresas amplían sus datos con la información de las redes sociales, logs de navegación, análisis de textos y datos de sensores para obtener una imagen completa de cliente a analizar y computar.
Quienes compran en Amazon o Mercado Libre, pueden constatar cómo la empresa le sugiere productos que le puedan interesar como resultado de entender las preferencias del consumidor.
Casos de Éxito Concretos (Amazon y Mercado Libre)
¡PARA PENSAR!
Basándonos en los casos anteriores ¿Cómo crees que se puede aplicar el modelo de Data Acquisition en tu empresa?
¿Cuáles son los desafíos? 
¡ESCRIBELO EN EL CHAT!
#AHORAESCUANDO
Adquisición de Datos
¿Qué es la Adquisición de Datos?
Se trata del proceso de recopilación, que incluye decidir qué datos se quiere adquirir, por qué y cómo, para luego poder explotarlos.
No hay una forma estándar de adquirirlos, debido a que hay muchos tipos de fuentes y proyectos.
Pueden ser adquiridos o heredados de la misma organización, buscados de forma externa o comprados.
¿Qué hace un Científico de Datos en términos generales?
Este número varía mucho de proyecto en proyecto, pero es un indicador de que se pasa mucho tiempo en esta etapa.
En base al nivel de madurez del gobierno de la compañía y su manejo de la información, se gestionará la adquisición de datos.
Organización de datos de 
la compañía
No va, es para guiar el uso del template.
Data Management Maturity Model
	Nivel 1	Nivel 2	Nivel 3	Nivel 4	Nivel 5
	Poca o ninguna gobernanza
Roles definidos dentro de los silos
Problemas de calidad de datos no abordados	Gobierno emergente
Introducción consistente de herramientas
Algunos roles y procesos definidos
Creciente conciencia del impacto de los problemas de calidad de datos	Data vista como habilitador organizacional.
Procesos y herramientas escalables
Metas establecidas considerando la calidad de los datos
Automatización de procesos	Gobierno centralizado y planificado
Gestión de Riesgos asociado a datos
Métricas de Performance de Iniciativas de Datos
Métricas de mejora de Calidad de Datos	Procesos de Alta Predicción
Riesgo Reducido
Métricas bien establecidas y desplegadas para medir la calidad de los datos
En la industria, la administración de datos pasa por 5 niveles que definen la madurez de esta.
Repaso de Tipos de Dato
Usar para los subtemas de un módulo.
Tipos de Datos
No 
estructurados
Son archivos de tipo texto que se suelen mostrar en filas y columnas con títulos. Son datos que pueden ser ordenados y procesados fácilmente por todas las herramientas de minería de datos.
Estructurados
Semi-
Estructurados
Tienen algunas características consistentes y definidas, no se limitan a una estructura rígida como la necesaria para las bases de datos relacionales.
No tienen estructura identificada.
¡PARA PENSAR!
¿Que tipo de datos son los de la encuesta?
CONTESTA LA ENCUESTA DE ZOOM
“Para pensar”.
¿Como crear encuestas de zoom? Disponible en este video.
El docente generará una encuesta de zoom para que los estudiantes respondan. Esto es una actividad de intercambio de opiniones.
Opciones (no hay respuesta correcta):
AI
5G
IoT
mRNA
AR/VR
CRISPR
Robotics
Longevity
Telehealth
Metaverse
Blockchain
Bioplastics
Gene Editing
Electrification
Space Tourism
Energy Storage
Verticle Farming
Cloud Computing
Plant-Based Meat
Personalize Medicine 
Autonomous Vehicles
Lectura de fuentes de Datos con Pandas
Usar para los módulos más importantes de la clase, donde se introducen conceptos que se ven en varios slides. No hay que usarla para todos los módulos.
Lectura de datos con Pandas
Lidiar con codificaciones extrañas
Encabezados de tablas
Columnas
Parsear columnas de fechas
Setear tipo de datos
Encontrar y localizar datos inválidos
Adjuntar datos a un .csv existente
Pandas es una librería con gran potencial para lectura de datos. A continuación se enumeran algunas de las facilidades que presenta sus funciones de lectura:
No va, es para guiar el uso del template.
Lectura de tablas en archivos planos
Usar para los subtemas de un módulo.
Lectura y escritura de archivos planos con Pandas
Un archivo CSV (valores separados por comas) es un archivo de texto que tiene un formato específico y permite guardar los datos en un formato de tabla estructurada.
read_csv es una función de pandas para leer este tipo de archivos.
Puede leer archivos en formato tabla con otros delimitadores.
Ejemplo
=
No va, es para guiar el uso del template.
Lectura de archivos planos con Pandas
No va, es para guiar el uso del template.
Lectura de archivos planos con Pandas
No va, es para guiar el uso del template.
Lectura de archivos planos con Pandas
No va, es para guiar el uso del template.
Lectura de archivos planos con Pandas (Headers)
No va, es para guiar el uso del template.
Lectura de archivos planos con Pandas (Fechas)
Parseo automatico de fechas
No va, es para guiar el uso del template.
Lectura de archivos planos con Pandas (Fechas)
Parseo manual de fechas
No va, es para guiar el uso del template.
Lectura de archivos planos con Pandas (Fechas y Hora)Parseo indicando formato fecha y hora.
No va, es para guiar el uso del template.
Lectura de archivos planos con Pandas (booleanos)
Read_csv puede detectar automáticamente booleanos si se le indica.
“asistió” se refiere a la asistencia de un alumno y “Tarea” si completo la tarea o no.
No va, es para guiar el uso del template.
¡PARA PENSAR!
¿Por qué en el ejemplo anterior, se detectó solo “asistió” y no Tarea?
¡CONTESTA EN EL CHAT!
“Para pensar”.
¿Como crear encuestas de zoom? Disponible en este video.
El docente generará una encuesta de zoom para que los estudiantes respondan. Esto es una actividad de comprobación.
Sugerimos:
Utilizarlo antes del break para que los estudiantes puedan votar en la encuesta antes de ir al mismo.
Al regresar, mostrar los resultados a los estudiantes.
Si hay buena respuesta de este recurso, se recomienda utilizarlo de forma orgánica en más instancias de la clase.
Lectura de Csv en Python
Aplicando estructuras en Python en grupos.
Lectura de .csv
En este desafío les proponemos leer un archivo .csv con read_csv junto con alguno de los argumentos que vimos. 
Trabajaremos en los grupos conformados, con las siguientes consignas:
Leer el archivo Encuesta.txt. Pista: usar delim_whitespace
Definir qué variables pueden ser booleanos (True o False, 0 o 1, si o no). Solo las que tienen dos valores por columna
Convertir a booleanos directamente en la lectura read_csv. Pista: Usar true_values y false_values en el argumento 
Tiempo estimado: 20 min
☕ 
BREAK
¡5/10 MINUTOS Y VOLVEMOS!
Obligatoria siempre. A la hora del Break, entre 5 y 10 minutos. Considerar ubicar este espacio en un momento adecuado de la clase. Al volver, mostrar los resultados de la pregunta del anterior slide y generar un breve intercambio.
Hojas de Cálculo
Usar para los subtemas de un módulo.
¿Qué son?
Consisten en datos almacenados de forma tabular en filas y columnas.
A diferencia de los archivos planos, pueden tener fórmulas y formato.
Un solo archivo puede tener diferentes hojas de cálculo.
No va, es para guiar el uso del template.
Hojas de cálculo
No va, es para guiar el uso del template.
Hojas de cálculo
Lectura de hojas y columnas
No va, es para guiar el uso del template.
Hojas de cálculo
Podemos, en lugar de usar el método pd.read_excel, crear un objeto y parsear las hojas del excel.
=
Atributo que enumera los nombres de las hojas. 
No va, es para guiar el uso del template.
Otros Formatos estructurados
Usar para los subtemas de un módulo.
Es un formato nativo de python que es popular para la serialización de objetos.
Otros Formatos estructurados (PICKLE)
Es mucho más rápido que .csv.
Reduce el tamaño de los archivos en la mitad usando técnicas de compresión.
No hay necesidad de especificar columnas de datos ni argumentos.
Al ser nativo de python solo puede leerse utilizando python.
PySpark
Usar para los subtemas de un módulo.
PySpark para BigData
Mientras PySpark es la biblioteca de Python para usar Spark, éste último es el nombre del motor para realizar la computación en clúster.
Spark permite construir una arquitectura que incluya gestión de streaming de datos, consultas de datos sin problemas, predicción de aprendizaje automático y acceso en tiempo real a diversos análisis.
Trabaja estrechamente con el lenguaje SQL, es decir, datos estructurados. Permite consultar los datos en tiempo real.
Spark es la herramienta adecuada gracias a su velocidad y sus API enriquecidas para trabajar en entornos cloud.
Pandas es una librería muy potente que permite hacer infinidad de procesos. El problema viene cuando queremos adquirir volúmenes demasiado grandes para una computadora normal.
PySpark para BigData
Práctica en vivo
Evaluar la eficiencia de un mismo set de datos, en distintos formatos (.csv; .xlsx; .pkl).
Vamos a leer un mismo archivo data.csv, data.xlsx y data.pkl y compararemos eficiencia de lectura y tamaños de cada uno.
Objetivo: Analizar eficiencia de lectura de distintos archivos
Comparamos CSV con Excel y Pickle.
10 Minutos
Se pueden utilizar en función de la disponibilidad de tiempo.
LECTURA DE CSV
Leer el csv de la clase utilizando pd.to_csv. Revisar que haya separado correctamente las columnas. Medir tiempo de lectura (usar %%time al inicio de la celda).
Con ese mismo DataFrame, escribir un excel (con index=False) y un pickle (probar también con argumento compression =’gzip’) del archivo. Cuál escritura les pareció más eficiente?
Leer nuevamente con excel (pd.read_excel) y el pickle (pd.read_pickle) midiendo tiempos de lectura de los tres archivos ¿Cuál demora más? ¿Cuánto espacio en disco ocupa cada archivo?
Duración: 10 minutos
Usar para las subsiguientes slides de challenges genéricos.
Why is “DATA CLEANING” necessary? | Medium.com | Enlace
Disponible en nuestro repositorio.
Input/Output - Pandas 1.2.4 documentation| pandas.pydata.org | Enlace
IO tools (text, CSV, HDF5, …) - pandas 1.2.4 documentation| pandas.pydata.org | Enlace
¿PREGUNTAS?
Obligatoria. Se sugiere ubicar al finalizar la explicación de algún tema, para abrir formalmente el espacio de preguntas y ordenar la interacción.
¡MUCHAS GRACIAS!
Resumen de lo visto en clase hoy: 
Ciclo de vida de un proyecto de Ciencia de datos
Importancia de tener un caso de negocio
Introducción a la adquisición de datos
Lectura de datos básicos en pandas.
OPINA Y VALORA ESTA CLASE
Obligatoria siempre.
#DEMOCRATIZANDOLAEDUCACIÓN
Todas las clases

Más contenidos de este tema