Trayecto Datos
Clase 1: ¿Qué es Python? ¿Qué
son los Datos?
Lenguajes de Programación
• ¿Qué es un Lenguaje?
• ¿Qué es un Lenguaje de
Programación? ¿Para qué sirve?
• ¿Qué Lenguajes de Programación
conocen?
• ¿Qué es Python?
Python
Python es un lenguaje de programación multipropósito, es decir,
que puede ser utilizado para distintas tareas como Ciencia de
Datos, Desarrollo Web, creación de Aplicaciones, etc..
Es un lenguaje de código abierto, eficiente, con una sintaxis
sencilla, fácil de aprender y que puede ser ejecutado en
múltiples plataformas.
Es por esto que es el lenguaje más utilizado a nivel mundial en el
año 2022 y cuenta con una gran comunidad que ayuda en
agregarle funcionalidades.
Saber programar en Python en la actualidad es un conocimiento
muy requerido en el mercado laboral.
Lenguajes de Programación
Fuente: https://es.statista.com/grafico/16580/lenguajes-de-programacion-mas-
usados-del-mundo/
Lenguajes de Programación
Fuente:https://programacion.net/articulo/9_lenguajes_de_programacion_que_debes_tener_muy_en_cuenta_e
n_este_2017_1767
¿Que es el análsis de datos?
• ¿Qué se imaginan que es el análisis de datos y
las bases de datos?
• ¿Cuáles son las diferencias entre ciencia de
datos, análisis de datos e inteligencia artificial?
• ¿Qué es un dato? ¿Cuál es la diferencia entre
dato, información, hecho y evidencia?
• ¿Para qué sirve la visualización de los datos?
¿Qué diferencia ven? (asunción Papa)
Cantidad de datos
Según estimaciones, entre el 2018 y
el 2020 se han el 90% de los datos
del mundo. En 2020 se crearon 64,2
zettabytes de datos, lo que supone
un aumento del 314% respecto a
2015.
A su vez, la capacidad mundial de
almacenamiento de la información
se ha duplicado aproximadamente
cada 40 meses desde los años 80.
Fuente: https://www.un.org
Fuente:https://www.mundoinsider.com/89252/cuantos-datos-hay-en-el-mundo/
Big Data
Fuente https://forum.huawei.com/enterprise/es/%C2%BFqu%C3%A9-son-las-tres- Fuente:https://www.masterbigdataucm.com/que-es-big-data/
vs-de-big-data/thread/740683-100759
Datos
“Los datos son el nuevo petróleo”
Clive Humby
“Los datos son valiosos, pero si no están
refinados, en realidad no se pueden
usar. El Petróleo debe transformarse en
gas, plástico, productos químicos, etc.
para crear una entidad valiosa que
impulse una actividad rentable; por lo
tanto, los datos deben desglosarse y Fuente https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcShcH-Qj-
nomy6wSCVXhWg1oGG5O9NJtM52dg&usqp=CAU
analizarse para que tengan valor”.
Michael Palmer
¿Qué es Data Analytics o Análisis de Datos?
Conjunto de métodos y técnicas de medición, que permiten gestionar la
información en tres grandes etapas: recolección, transformación y visualización.
Fuente: Concepto de la temática principal. libro : A General Introduction to Data Analytics (Moreira, Carvalho,
Fuente: https://www.youtube.com/watch?v=f07tZ1DmSbo
Trayecto Datos
Clase 2: Estructuras de Control
Estructuras de Control
Las estructuras de control son un
conjunto de reglas que permiten
controlar el flujo de la ejecución
del código.
Pueden clasificarse:
- Condicionales
Fuente: https://pythonaplicado.com/leer/capitulo-7/estructuras-
- Iterativas (repetitiva) de-control
Estructuras de control condicionales
Un bloque de código será ejecutado si se
cumple determinada condición.
La condición es una operación lógica que
puede tener como resultado: True
(Verdadero) o False (Falso).
En el caso que sea True, se ejecuta el bloque
de código. Si no se cumple esa condición
(False) no se ejecutará o se ejecutará otro
Fuente: https://controlautomaticoeducacion.com/python-desde-
bloque.
cero/condicionales-en-python/
Estas estructuras pueden ser simples o
complejas
Estructuras de control iterativas o Bucle
Iteración se refiere a la ejecución
reiteradas veces de determinado
bloque de código.
Usaremos for para ejecutar una misma
sección de código para una Lista de
valores.
Fuente:
https://carlosjuliopardoblog.wordpress.com/2017/
04/30/iniciando-con-python/
Funciones
Las funciones son bloques de código. En Python
podemos crear nuestras propias funciones:
Se define un nombre de la función y los
parámetros que va a recibir, es decir cuando
querramos ejecutar nuestra función hay que darle
determinados valores sobre los que se ejecutará el
bloque de código.
Toda función termina con return o print indicando
la acción que debe realizar esa función Fuentehttps://tutorialesinformatica.com/programacio
n/como-crear-modulos-en-python/
Trayecto Datos
Clase 3: Bases de datos
¿Qué son las bases de datos?
Existen varios tipos de archivos de los que podemos leer o
escribir datos de forma sistematizada.
Los más comunes son:
● CSV
● XLSX
● JSON
● XML
Estos archivos guardan datos,
pero no son bases de datos.
¿Qué son las bases de datos?
Una base de datos es un conjunto de datos
almacenado sistemáticamente para su posterior
análisis.
Cuando nos referimos a una base de datos,
hablamos de una colección de datos
relacionados y de cómo están organizados, y de
Las bases de datos son
cómo accedemos a ellos. representadas con este símbolo.
¿Qué son las bases de datos?
Generalmente se confunde el término
“base de datos” con los DBMS
(DataBase Management System), estos
últimos son el software usado para que
los usuarios puedan interactuar con la
base de datos.
Ejemplos de DBMS: PostgreSQL,
MongoDB, MySQL, Oracle, Google
BigQuery, etc.
¿Qué son las bases de datos?
Las bases de datos:
● Tiene una fuente de la cual derivan los
datos.
● Se diseña, construye y puebla con
datos para un propósito específico.
● Está dirigida a un grupo de usuarios.
Bases de datos relacionales o SQL
Son aquellas que mantienen estructuras
de “tablas”, es decir, poseen filas y
columnas, y las tablas se relacionan
entre sí. Se les llaman SQL (lenguaje de
consulta estructurado) pues se usa este
lenguaje para manipularlas.
PostgreSQL, MySQL, Oracle, Microsoft
SQL Server, son algunos ejemplos de Diagrama de entidad relación, usados para diseñar las bases
de datos relacionales, muestra todas las tablas y cómo se
estas. relacionan entre sí.
Clave primaria en bases de datos relacionales
En el diseño de bases de datos relacionales, se
llama clave primaria o clave principal a un campo
o a una combinación de campos que identifica de
forma única a cada fila de una tabla.
Esta clave también se utiliza para relacionar
diferentes tablas entre sí, cuando existe un dato
en común entre las mismas.
Ejemplos de claves primarias son DNI (asociado a
una persona) o ISBN (asociado a un libro).
MongoDB
Dentro de las bases de datos NoSQL, probablemente una
de las más famosas sea MongoDB.
MongoDB es una base de datos orientada a
documentos. Esto quiere decir que en lugar de guardar
los datos en registros, guarda los datos en documentos.
Estos documentos son almacenados en BSON, que es
una representación binaria de JSON.
Una de las diferencias más importantes con respecto a
las bases de datos relacionales, es que no es necesario
seguir un esquema. Los documentos de una misma
colección (concepto similar a una tabla de una base de
datos relacional), pueden tener esquemas diferentes.
MongoDB - Misma colección, esquemas diferentes
Imaginemos que tenemos una colección a la Colección Personas
que llamamos Personas. En la misma {
Nombre: "Felipe",
colección podemos tener documentos Apellidos: "Ramirez",
Edad: 15,
esquemas diferentes, uno con menos Doc 1 Aficiones: ["fútbol","videojuegos"],
Amigos: [
{
campos que el otro, o incluso campos Nombre:"Estefania",
Edad:14
diferentes. Esto que es algo impensable en },
{
Nombre:"Luis",
una base de datos relacional, es algo }
Edad:17
totalmente válido en MongoDB. Esta }
]
flexibilidad hace ideal este tipo de bases de
{
datos para guardar grandes cantidades de Doc 2
Nombre: "Luis",
Estudios: ["Matemática", "Lengua"],
Amigos:12
datos, sin la necesidad de normalizarlos a un }
solo esquema.
Trayecto Datos
Clase 5: ¿Qué es Storytelling?
¿Qué es storytelling?
El trabajo del científico de datos no termina
una vez realizado un análisis, los resultados
deben de exponerse, muchas veces ante
público técnico y no técnico simultáneamente.
El poder contar lo que se hizo en el proyecto,
los descubrimientos, los resultados y cómo se
llegó a los mismos es lo que conocemos como
storytelling.
Storytelling
El storytelling consiste de la unión de 3 mundos:
• Análisis de datos
• Visualizaciones
• Narrativa
Análisis de datos
Es el campo en el que se
convierten los datos en
información y se
generan modelos que
ayudan a predecir
futuros resultados.
Visualizaciones
En este campo se generan
gráficos impactantes, que
sean auto descriptivos, y
que nos permitan ver las
conclusiones del análisis
facilmente. Existen muchos
tipos de gráficos, y saber
usar el correcto es un arte
Narrativa
Al exponer las conclusiones,
no solo se deben decir los
resultados, se debe explicar
cómo se llegó a los mismos,
de una forma apta para
público técnico y no técnico, y Fuente: https://politicologos.com/storytelling-politico/
que todo mantenga
coherencia y un flujo natural,
como una historia
Pautas para un buen storytelling
o Definir objetivos claros
o Definir las preguntas a responder
o Redactar la historia
o Considerar a la audiencia
o Ser genuino / original
o Evitar sesgos
o Considerar el propósito y las
expectativas
o Declarar las suposiciones y Fuente: https://commons.wikimedia.org/wiki/File:Visual-
advertencias Storytelling.jpg
o No caer en la trampa de "se ve
genial"
Herramientas
Existen muchas herramientas en esta área, algunas ejemplos
públicos de las más usadas:
• Tableau
• Power Bi
• Google Data Studio
Trayecto Datos
Clase 6: Estadística
Variables
No puede tomar un valor entre dos
Discreta consecutivos (ej: edad, cantidad de
personas)
Numéricas
(Cuantitativas) Puede tomar cualquier valor dentro de
Continua un intervalo (ej: peso, precio)
Variables
Tienen un orden. Para modelos:
Codificación con números en orden:
Ordinales (Ejemplo: Excelente -5, Muy bueno-4,
Categóricas Bueno-3, Regular-2, Malo-1
(Cualitativas)
No tienen un orden. Para modelos:
Nominales Codificación: Se deben crear Variables
Dummies
Estadística
La estadística es la ciencia que se encarga
de inferir valores o generar predicciones
sobre algún evento del cual tenemos
información previa.
Básicamente sirve para obtener
información general con solo una
muestra de las observaciones,
permitiéndonos calcular
la confianza que podemos tener
sobre nuestras predicciones.
Estadística - Tipos
Existen dos tipos de estadística:
● Descriptiva: Busca describir los datos que se
tienen, analizar distribuciones y
correlaciones, etc. Tiene una relación
directa con el análisis exploratorio de los
datos
● Inferencial: Conociendo el comportamiento
de los datos recolectados, busca obtener
información más general sobre el total de
los datos (no solo los recolectados). De
alguna forma relacionado a la parte del
modelado en la ciencia de datos actual
Media
La media es el promedio de los datos numéricos
Se calcula sumando todos lo valores y dividiendo por la cantidad de
registros
Conjunto de datos 5 3 2 13 9 7 6 1 4 3 6 2 3
Suma 5 + 3 + 2 + 13 + 9 + 7 + 6 + 1 + 4 + 3 + 6 + 2 + 3 = 64
Media/Promedio 64 / 13 = 4,92
Mediana
La mediana es el valor del medio en un conjunto de datos numéricos
ordenados. Se calcula ordenando los números de menor a mayor y
seleccionando el valor del medo.
Si la cantidad de valores es impar es el del medio, si es par es el promedio entre los
dos del medio.
Conjunto de datos 5 3 2 13 9 7 6 1 4 3 6 2 3
Ordenados 1 2 2 3 3 3 4 5 6 6 7 9 13
6 6
Mediana 4
Moda
La moda es el valor que aparece con mayor frecuencia en un conjunto
de datos numéricos o categóricos, es decir el que más se repite
Conjunto de datos 5 3 2 13 9 7 6 1 4 3 6 2 3
Moda 3
De este conjunto de datos numéricos:
Media 4,92
Mediana 4
Moda 3
Cuartiles
Los cuartiles se obtienen dividiendo un conjunto de datos numéricos
en 4, siendo que el primer cuartil Q1, es el valor en el cual o por
debajo del cual queda el 25% del conjunto de datos, el segundo cuartil
Q2 es el valor por debajo del cual queda el 50% de los datos (coincide
con la Mediana), el tercer cuartil Q3 es el valor por debajo del cual
quedan el 75%:
Conjunto de datos 5 3 2 13 9 7 6 1 4 3 6 2 3
Ordenados 1 2 2 3 3 3 4 5 6 6 7 9 13
Q1: 3 Q2: 4 Q3: 6
Medidas de dispersión
El Desvío estándar sirve para conocer la dispersión de los datos
numéricos de una variable.
Primero vamos a ver que es el Rango y la Varianza
Rango: Diferencia entre valor más alto y más bajo
Conjunto de datos 5 3 2 13 9 7 6 1 4 3 6 2 3
Ordenados 1 2 2 3 3 3 4 5 6 6 7 9 13
Rango: 13 – 1 = 12
Medidas de dispersión
Varianza: Es la suma de las diferencias entre cada valor y
la media al cuadrado divido la cantidad de registros
Conjunto de datos 5 3 2 13 9 7 6 1 4 3 6 2 3
(5 – 4)2 + (3 – 4) 2 + (2 – 4) 2 + (13 – 4) 2 + (9 – 4) 2 + (7 – 4) 2 + (6 – 4) 2
+ (1 – 4) 2 + (4 – 4) 2 + (3 – 4) 2 + (6 – 4) 2 + (2 – 4) 2 + (3 – 4) 2
13
1 + 1 + 4 + 81 + 25 + 9 + 4 + 9 + 0 + 1 + 4 + 4 + 1 = 144
Varianza: 144 / 13 = 11.08
Medidas de dispersión
Desvío Estándar: Es la raíz cuadrada de la varianza
Conjunto de datos 5 3 2 13 9 7 6 1 4 3 6 2 3
Varianza: 144 / 13 = 11.08
Desvío Estándar: 3,33
Valores atípicos
Valor atípico (Outlier) son valores que no son consistente con los demás datos.
Eestadísticamente son observaciones numéricamente distantes de demás datos,
es decir, son un valor demasiado alto o demasiado bajo. Esto puede indicar que
hay un error en los datos.
No hay manera única de calcularlo, las visualizaciones son una manera. Una
forma es con el rango intercuartil que es la diferencia entre Q3 y Q1.
Conjunto de datos 5 3 2 13 9 7 6 1 4 3 6 2 3 // Q1 = 3 Q3 = 6
Rango intercuartil (IRQ): 6 – 3 = 3 ⇒ 3 x 1.5 = 4.5
En este caso un valor atípico es un valor menor a 1.5 o mayor a 10.5
En este conjunto de datos 13 es un outlier
Trayecto Datos
Clase 7: Limpieza de datos
Calidad de los Datos
Los datos son de calidad cuando representan correctamente la
construcción del mundo real a la que se refieren.
Los principales aspectos a considerar son:
o Validez
o Precisión
o Integridad
o Consistencia
o Uniformidad
Fuente: https://bigprofitdata.com/extraccion-de-
datos/limpieza-de-datos/
Validez
La validez de los datos, es el grado en que los datos se ajustan a las reglas o
restricciones:
• De tipo de dato: los valores en una columna en particular deben ser de un tipo de datos.
• De rango: normalmente, los números o fechas deben estar dentro de un cierto rango.
• Obligatorias: determinadas columnas no pueden estar vacías.
• Únicas: un campo, debe ser único en un conjunto de datos.
• De pertenencia al conjunto: los valores de una columna provienen de un conjunto de
valores discretos. Por ejemplo, el sexo biológico de una persona en general se marca
como masculino o femenino.
• Patrones de expresión regular: campos de texto que deben seguir un patrón
determinado. (Email)
• Validación de campo cruzado: deben cumplirse determinadas condiciones que abarcan
varios campos. Por ejemplo, la fecha de alta de un paciente del hospital no puede ser
anterior a la fecha de admisión.
Precisión
La precisión, es el grado en que los datos se acercan a los valores
reales.
● Que un dato sea válido, no significa que sea preciso.
• El color de ojos válido para una persona puede ser azul, pero no
necesariamente es verdadero (no representa la realidad).
● Otra cosa a tener en cuenta es la diferencia entre exactitud y
precisión. Decir que vivís en la tierra es exacto, pero no es preciso.
¿Dónde en la Tierra?
Integridad
La integridad de un dataset es el grado en el que se conocen todos
los datos necesarios.
Cuando analizamos Data Sets, es muy común encontrar valores
faltantes, y generalmente es imposible conseguirlos.
Dado el hecho de que los valores perdidos son inevitables, nos
queda la pregunta de qué hacer cuando los encontramos.
Ignorar los datos faltantes es lo mismo que cavar agujeros en un
barco; Se hundirá.
A continuación veremos tres formas de lidiar con este problema.
Integridad - Valores faltantes
Algunas estrategias para resolver este problema son:
Descartar Imputar Marcar
Si los valores perdidos en una Significa calcular el valor faltante Significa indicar que el dato está
columna rara vez ocurren y en base a otras observaciones. faltando. Algunos argumentan que
ocurren al azar, entonces la Algunos métodos para resolverlo: completar los valores faltantes
solución más fácil y directa es Por valores estadísticos - media, conduce a una pérdida de
eliminar las observaciones (filas) mediana, etc información, independientemente
que tienen valores perdidos. Regresión linear - en relación a del método de imputación que
Si faltan la mayoría de los valores otras variables usemos. Esto se debe a que decir
de la columna y se producen al Copiando valores de otras que faltan datos es informativo en
azar, una decisión típica es observaciones similares - solo sí mismo y el algoritmo debería
descartar toda la columna. cuando existen mucha cantidad de saberlo.
datos
Consistencia
La consistencia es el grado en que los datos son consistentes,
dentro del mismo conjunto de datos o en varios conjuntos de
datos.
La inconsistencia ocurre cuando dos valores en el conjunto de
datos se contradicen.
● Una edad válida, digamos 10, podría no coincidir con el estado
civil, digamos divorciado.
● Un cliente se registra en dos tablas diferentes con dos
direcciones diferentes. ¿Cual es la verdadera?
Uniformidad
La uniformidad es el grado en el que se especifican los datos
utilizando la misma unidad de medida.
• El peso se puede registrar en libras o en kilos.
• La fecha puede seguir el formato de Argentina o de EE. UU.
Para poder procesarlos, los datos deben convertirse a una
única unidad de medida.
Metodología
El flujo de trabajo es una secuencia de cuatro pasos cuyo objetivo
es producir datos de alta calidad y tener en cuenta todos los
criterios de los que hemos hablado.
• Inspección: detecta datos inesperados, incorrectos e inconsistentes.
• Limpieza: Corrija o elimine las anomalías descubiertas.
• Verificación: después de la limpieza, los resultados se inspeccionan para
verificar que sean correctos.
• Informes: se registra un informe sobre los cambios realizados y la calidad de
los datos almacenados actualmente.
Pregunta evaluadoras
Estas preguntas ayudan a evaluar y mejorar la calidad de los datos:
¿Cómo se recopilan los datos y en qué condiciones ?
El entorno donde se recopilaron los datos es importante. El entorno incluye,
entre otros, la ubicación, el tiempo, las condiciones climáticas, etc.
No es lo mismo cuestionar a los sujetos sobre su opinión sobre lo que sea
mientras están de camino al trabajo que mientras están en casa.
¿Qué representan los datos ?
¿Incluye a todos? ¿Solo la gente de la ciudad ?. O, quizás, solo aquellos que
optaron por contestar porque tenían una fuerte opinión sobre el tema.
¿Cuáles son los métodos utilizados para limpiar los datos y por qué ?
Diferentes métodos pueden ser mejores en diferentes situaciones o con
diferentes tipos de datos.
Trayecto Datos
Clase 8: Agrupaciones y
uniones
Agrupaciones
Es muy útil en algunos casos realizar
agrupaciones sobre los DataFrame
que sirve para ver los datos y
organizarlos de otro manera.
Para eso utilizaremos un método de
pandas llamado groupby que permite
agrupar datos en función de los
demás
Groupby
Podemos describir las operaciones sobre grupos con el término
split-apply-combine
En la primera etapa del proceso, los datos en un objeto pandas (una instancia de
Series o de DataFrame) se dividen en grupos (split) en base a una o más keys que
definimos. Esta división se lleva a cabo por filas (axis = 0) o por columnas (axis =
1).
Como segunda etapa, aplicamos una función a cada uno de los grupos (apply)
dando como resultado un nuevo valor por grupo.
Como último paso, los resultados de la aplicación de la función en cada uno de
los grupos se combina en un objeto resultado (combine).
Groupby
Fuente: https://www.w3resource.com/python-exercises/pandas/groupby/index.php
Groupby
Para realizar la agrupación en primer lugar se define por que columna se va a
realizar la agrupación
Columna1 Columna2
A 10 Columna1
A 20 A
DataFrame.groupby(“Columna1)
B 50 B
B 10 C
C 60
C 20
Groupby
Luego se realiza una operación sobre los datos de una columna por
ejemplo suma (sum()), promedio (mean()), contar (count()), etc.
Columna1 Columna1 Columna2
A A 30
DataFrame.groupby(“Columna1)[“Columna2].sum()
B B 60
C C 80
Uniones – join / merge / concat
Estas operaciones se utilizan para unir dos DataFrame o Series.
Fuente: https://www.linkedin.com/pulse/entiende-los-join-con-python-luis-felipe-castro-
calder%C3%B3n/?originalSubdomain=es
Uniones – join / merge / concat
Estas operaciones se utilizan para unir dos DataFrame o Series.
Fuente: https://www.linkedin.com/pulse/entiende-los-join-con-python-luis-felipe-castro-
calder%C3%B3n/?originalSubdomain=es