-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path02_imputacion.R
71 lines (43 loc) · 1.89 KB
/
02_imputacion.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# 02_imputacion
# Daniel Redondo Sánchez
# ----- Ruta de trabajo (Mac y Windows) y semilla -----
setwd("~/Dropbox/Transporte_interno/Máster/Ciencia de Datos/MDPC/Trabajo_final")
setwd("C:/Users/dredondo/Dropbox/Transporte_interno/Máster/Ciencia de Datos/MDPC/Trabajo_final")
set.seed(1991)
# ----- Carga de paquetes -----
library(mice) # Para imputar
# ----- Importación de conjunto de datos -----
load(file = "data/train.RData")
# ----- Inicialización de imputación -----
init <- mice(train, maxit = 0)
metodos <- init$method # logreg para binarias (public_meeting, permit y source_class) y polyreg para el resto
matriz_de_predictores <- init$predictorMatrix
# ----- Imputación -----
# Ver variables con datos perdidos
names(train[colSums(is.na(train)) > 0])
# Imputación (1 conjunto, 5 iteraciones)
imputed <- mice(train, method = metodos, predictorMatrix = matriz_de_predictores, m = 1, maxit = 5)
# Completar la imputación
train <- mice::complete(imputed)
# Ver variables con datos perdidos - no hay tras imputación
names(train[colSums(is.na(train)) > 0])
# ----- Exportación de conjuntos de datos -----
save(train, file = "data/train_imputado.RData")
# Y análogo para test:
# ----- Importación de conjunto de datos -----
load(file = "data/test.RData")
# ----- Inicialización de imputación -----
init <- mice(test, maxit = 0)
metodos <- init$method
matriz_de_predictores <- init$predictorMatrix
# ----- Imputación -----
# Ver variables con datos perdidos
names(test[colSums(is.na(test)) > 0])
# Imputación (1 conjunto, 5 iteraciones)
imputed <- mice(test, method = metodos, predictorMatrix = matriz_de_predictores, m = 1, maxit = 5)
# Completar la imputación
test <- mice::complete(imputed)
# Ver variables con datos perdidos - no hay tras imputación
names(test[colSums(is.na(test)) > 0])
# ----- Exportación de conjuntos de datos -----
save(test, file = "data/test_imputado.RData")