Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Dra.LupeNeridaPizanToscano 2
DATAFRAME, SERIES Y USO DE
PANDAS
RECOLECCIÓN DE
INFORMACIÓN
DE PÁGINAS WEB
LIMPIEZA DE DATOS
Dra.LupeNeridaPizanToscano 4
2.-Eliminando los valores faltantes.
Dra.LupeNeridaPizanToscano 5
2.-Eliminando los valores faltantes.
➢Pandas tiene la función "Drop NA"
➢"Drop NA" elimina los valores no numéricos,
es decir, todos los valores faltantes.
➢Lo ejecutamos y nos da cero filas(rows).
➢Para este conjunto de datos en específico hay
al menos un dato faltante por cada una de las
casas.
➢Entonces “Drop NA” elimina todas las casas y
va a quedar un conjunto de datos tamaño 0.
Dra.LupeNeridaPizanToscano 6
Dra.LupeNeridaPizanToscano 7
2.-Eliminando los valores faltantes.
➢Entonces, como se elimina toda la data al
intentar eliminar los “datos faltantes” tenemos
que resolver el problema.
➢Solución:
➢Determinar cuáles columnas tienen valores nulos,
➢Contaremos los valores nulos. Si hacemos la suma por
columnas encontramos para cada columna cuántos valores
le faltan.
Dra.LupeNeridaPizanToscano 8
Dra.LupeNeridaPizanToscano 9
Dra.LupeNeridaPizanToscano 10
2.-Eliminando los valores faltantes.
Dra.LupeNeridaPizanToscano 13
Dra.LupeNeridaPizanToscano 14
2.-Eliminando los valores faltantes.
➢En la columna PoolQC, el 99% de sus filas(
rows ) tiene un valor nulo o faltante, entonces
a partir de esa columna se ordenan todas las
demás.
➢Entonces, se eliminan todas las columnas que
están dando problemas que son todas las que
salen en la lista y se soluciona todo.
Dra.LupeNeridaPizanToscano 15
2.-Eliminando los valores faltantes.
➢Utilizaremos drop na,
➢Pero con eje igual a 1 (axis=1),
➢El valor de default es eje igual a 0, que es decir, va
a buscar a través de filas(rows)
➢axis=1 va a buscar a través de columnas.
➢No da sin ningún problema 1,460 rows (casas)
y 61 características.
➢Se elimino varias columnas y nos da nuestro
conjunto de datos.
Dra.LupeNeridaPizanToscano 16
Dra.LupeNeridaPizanToscano 17
LIMPIANDO DATOS CON PYTHON
➢Analizando lo que se elimino con
dropna(axis=1)
➢La columna PoolQC tenía 99% de datos
faltantes.
➢¿Qué es PoolQC? ¿qué es lo que se eliminó?
➢Revisemos data_description.
➢Buscamos “PoolQC” con cntrl+B,
Dra.LupeNeridaPizanToscano 18
Dra.LupeNeridaPizanToscano 19
Dra.LupeNeridaPizanToscano 20
LIMPIANDO DATOS CON PYTHON
➢Buscamos “PoolQC” con cntrl+B,
➢“Pool Quality”, la calidad de la piscina. Ex:
es excelente la calidad, Gd: si es buena la
calidad, TA: es promedio, Fa: es pasable o
decente y NA: no tiene piscina.
➢ Significa que estamos perdiendo un dato
importante al borrar esta información. Las
casas que sí tienen piscina están perdiendo un
valor agregado, por lo tanto, no podemos
eliminar esa columna.
Dra.LupeNeridaPizanToscano 21
LIMPIANDO DATOS CON PYTHON
Dra.LupeNeridaPizanToscano 22
Dra.LupeNeridaPizanToscano 23
LIMPIANDO DATOS CON PYTHON
➢ Así conocemos los valores que contiene la columna
PoolQC.
➢ Nos muestra "Ex" que es "excelente", "FA" que es
"Fair" , "Gd" que es "Good” y "nan".
➢ no hubo ningún "TA”.
➢ Le daremos valores numéricos.
➢ Ex es un 4, Gd es 3, TA es 2, FA es 1 y los valores
nulos, que lo vamos a representar con np.nan, van a
ser ceros.
➢ Así se respeta y no se elimina toda la información de
la columna.
Dra.LupeNeridaPizanToscano 24
(PYTHON)
Dra.LupeNeridaPizanToscano 25
Función Lambda
➢ Lambda se refiere a una pequeña función anónima.
➢ Las llamamos “funciones anónimas” porque
técnicamente carecen de nombre.
➢ Al contrario que una función normal, no la definimos
con la palabra clave estándar def que utilizamos en
Python.
➢ En su lugar, las funciones Lambda se definen como
una línea que ejecuta una sola expresión.
➢ Este tipo de funciones pueden tomar cualquier
número de argumentos, pero solo pueden tener una
expresión.
Dra.LupeNeridaPizanToscano 26
Función Lambda
➢ #Se escribe a p1 y p2 como los parámetros 1 y 2 de la
función. lambda p1, p2: expresión
➢ Ejemplo:
#Aquí tenemos una función creada para sumar.
def suma(x,y):
return(x + y)
#Aquí tenemos una función Lambda que también suma.
lambda x,y : x + y
#Para poder utilizarla necesitamos guardarla en una
variable.
suma_dos = lambda x,y : x + y
Dra.LupeNeridaPizanToscano 27
La Función de Filtro en Python
➢ La función filter() integrada de Python puede usarse para crear un
nuevo iterador a partir de un iterable existente (como una lista o un
diccionario) que filtrará de forma eficiente los elementos usando una
función que proporcionamos.
➢ Un iterable es un objeto Python que puede “repetirse” es decir,
devolverá elementos en una secuencia de forma que podamos usarla
en un bucle.
➢ La sintaxis básica para la función filter() es:
filter(function, iterable)
➢ Filter con lambda
filter(lambda item: item[] expression, iterable)
creature_names = ['Sammy', 'Ashley', 'Jo', 'Olly', 'Jackie', 'Charlie']
Dra.LupeNeridaPizanToscano 28
➢ Para “filtrar”esta lista, encontrar los nombres de las criaturas del
acuario que comienzan con vocal:
filter(lambda x: x[0].lower() in 'aeiou', creature_names)
Dra.LupeNeridaPizanToscano 29
Función map()
➢ La función map() toma una función y una lista y
aplica esa función a cada elemento de esa lista,
produciendo una nueva lista.
➢ La función map() se utiliza mucho junto a
expresiones lambda ya que permite evitar escribir
bucles for.
➢ Esta función trabaja de una forma muy similar a
filter()
➢ La diferencia es que en lugar de aplicar una condición
a un elemento de una lista o secuencia, aplica una
función sobre todos los elementos.
Dra.LupeNeridaPizanToscano 30
Función map()
>>> def doblar(numero):
return numero*2
Dra.LupeNeridaPizanToscano 31
LIMPIANDO DATOS CON PYTHON
Dra.LupeNeridaPizanToscano 32
Dra.LupeNeridaPizanToscano 33
LIMPIANDO DATOS CON PYTHON
➢Vamos a verificar el número de Nans en la
columna: Pediremos para la columna PoolQC
dame los elementos nulos y súmalos, y nos
debe de dar el valor de 0.
➢Si pedimos un “sample”, va tomar cinco
valores aleatorios y los imprime.
Dra.LupeNeridaPizanToscano 34
Dra.LupeNeridaPizanToscano 35
LIMPIANDO DATOS CON PYTHON
Dra.LupeNeridaPizanToscano 36
LIMPIANDO DATOS CON PYTHON
Dra.LupeNeridaPizanToscano 37
Dra.LupeNeridaPizanToscano 38
LIMPIANDO DATOS CON PYTHON
Dra.LupeNeridaPizanToscano 39
LIMPIANDO DATOS CON PYTHON
Finalmente,
como este pueden haber muchos otros casos
similares en la base de datos donde no se pueden
eliminar porque son necesarios y se debe tener
cuidado en verificar que se está eliminando.
Dra.LupeNeridaPizanToscano 40
INTRODUCCION A LA CIENCIA DE
LOS DATOS