Documentos de Académico
Documentos de Profesional
Documentos de Cultura
clasificación
Dra. Patricia Rayón Villela
1
Contenido
1. Metodología Crisp
– Entendimiento del negocio
– Comprensión de datos
– Preparación de datos
– Modelado
• Regresión
• Clasificación
– Evaluación
• Error
– Despliegue
2
Métodología Crisp
3
En la práctica, muchas
de las tareas se pueden
realizar en un orden
diferente y, a menudo,
será necesario
retroceder a las tareas
anteriores y repetir
ciertas acciones.
1. Entendimiento del
negocio
2. Comprensión de datos
3. Preparación de datos
4. Modelado
5. Evaluación
6. Despliegue
Comprensión del negocio
5
Comprensión del negocio
• Objetivo comercial
– Obtener un precio acorde a las características de una casa
– Predecir el precio de una casa en función de los atributos
principales
6
Comprensión de los datos
7
Comprensión de los datos
• La etapa 3 hace énfasis en la integración de datos y las fuentes de
datos
1. Informe inicial de recopilación de datos
i. Enumerar fuentes de datos
ii. Métodos para adquirir los datos y problemas encontrados y
logros
Recopilación de datos iniciales
• Datos existentes. Incluye una amplia variedad de datos, como datos
transaccionales, datos de encuesta, registros Web, etc. Tenga en
cuenta si los datos existentes son suficientes para adaptarse a sus
necesidades.
• Datos adquiridos. ¿Su organización utiliza datos adicionales, como
datos demográficos? Si no los utiliza, considere si son necesarios.
• Datos adicionales. Si las fuentes anteriores no satisfacen sus
necesidades, es posible que necesite realizar encuestas o realizar
seguimientos adicionales para servir de complemento a los
almacenes de datos actuales.
Descripción de los datos
• ¿Con qué atributos contamos?
10
Información
• ¿Qué información inicial podemos obtener?
• Leer archivo CSV
– Train
– Test
• Cantidad de datos
– Número de atributos
– Cantidad de registros
• Tipo de datos
– int64
– float64
– Object
• Una “muestra de los datos”
– df.head()
• Leer el archivo en un dataframe “df”
• df.shape
• df.info()
Gráficas para valores categóricos
• ¿Qué información podemos obtener de una variable categórica?
– Cuantos valores distintos tenemos
– Cuantos datos de cada valor
Contar cuantos elementos de cada
categoría
Con respecto a la variable de interés
Variables numéricas
17
18
19
Universidad Internacional de La Rioja
Comportamiento de la variable de interés
21
22
Diagrama de dispersión
23
Preparación de los datos
24
Información de los datos
¿Qué observamos?
Datos nulos
• ¿Existen datos nulos?
• ¿Cuántos?
• ¿Qué variables?
• ¿Qué porcentaje?
1.Exploratory00_01.ipynb
26
Valores nulos
• df.isnull()
• df.isnull().sum()
Ver solo aquellos datos que tienen datos
faltantes
Que porcentaje de los datos son “faltantes”
¿Qué hace dropna?
¿Qué paso?
Axis=0, axis=1
• Dafault axis=0
Variables que tienen datos nulos
34
¿Qué hacemos con los datos nulos?
• Imputación
• Datos categóricos
– Moda
– Ffil, bfill
• Datos numéricos
– Reemplazar con la media
– Reemplazar con la mediana
– Moda
– Reemplazar ffill
– Reemplazar bfill
35
Seleccionar valores numéricos (int, float)
36
Variables numéricas (37+1)
1. Id 13. TotalBsmtSF 25. Fireplaces 37. YrSold
2. MSSubClass 14. 1stFlrSF 26. GarageYrBlt
3. LotFrontage 15. 2ndFlrSF 27. GarageCars • SalePrice
4. LotArea 16. LowQualFinSF 28. GarageArea
5. OverallQual 17. GrLivArea 29. WoodDeckSF
6. OverallCond 18. BsmtFullBath 30. OpenPorchSF
7. YearBuilt 19. BsmtHalfBath 31. EnclosedPorch
8. YearRemodAdd 20. FullBath 32. 3SsnPorch
9. MasVnrArea 21. HalfBath 33. ScreenPorch
10. BsmtFinSF1 22. BedroomAbvGr 34. PoolArea
11. BsmtFinSF2 23. KitchenAbvGr 35. MiscVal
12. BsmtUnfSF 24. TotRmsAbvGrd 36. MoSold
37
Imputación Eliminar alguna
variable, ojo con
axis
Llenar con la
mediana o mean
38
Datos categóricos
DATOS CATEGÓRICOS: conteo
df_ = df.select_dtypes(exclude=['int64', 'float64'])
for col in df_.columns:
print(df_[col].unique()) # to print categories name only
print(df_[col].value_counts()) # to print count of every category
40
Utilizando la moda
41
Visualizar la correlación entre variables
42
Los valores con mayor correlación
43
DATOS CATEGÓRICOS: conteo
df_ = df.select_dtypes(exclude=['int64', 'float64'])
for col in df_.columns:
print(df_[col].unique()) # to print categories name only
print(df_[col].value_counts()) # to print count of every category
49
Modelado
• Predicción
– Random Forest
– Decision Tree Regression
• Clasificación
– Decision Tree
50
Árbol de decisión de regresión
• Ver código: 2.DecisionTreeRegressor.ipynb
51
Random Forest regressor
52
Evaluación de algoritmos de regresión
3.Model Evaluation for Forecasting.ipynb
53
DecisíonTreeRegressor
Error de entrenamiento
54
Random Forest
https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestRegressor.html
55
Decision Tree
4.Árbol de decision.ipynb
Definir categorias
yclass
56
57
Evaluación
58
Tipos de errores
• MSE o error cuadrado medio