Nunca he tenido problemas con la R antes de estrellarse.
Estoy usando el mice
paquete (ratones 2.13) para realizar múltiples imputaciones. El código funciona bien en algunos subconjuntos de los datos, pero cuando lo corro en otros subconjuntos de R se bloquea (no inmediatamente - después de algún tiempo). Desde la salida en la I justo antes de que se estrelle, creo que es el uso de la 2l.pan
método de imputación (de la pan
paquete) he de ejecutar la actualización.paquetes() ya.
¿Cómo puedo diagnosticar este problema ?
Problem signature:
Problem Event Name: APPCRASH
Application Name: Rgui.exe
Application Version: 2.151.59607.0
Application Timestamp: 4fe47a63
Fault Module Name: R.dll
Fault Module Version: 2.151.59607.0
Fault Module Timestamp: 4fe47a4e
Exception Code: c0000005
Exception Offset: 0000000000032ec8
OS Version: 6.1.7601.2.1.0.256.4
Locale ID: 2057
Additional Information 1: 7782
Additional Information 2: 77823beb5887f451c3dd7ae4fe931995
Additional Information 3: 4491
Additional Information 4: 4491b41bf90894717964f5eef2cccd84
Actualización
He conseguido crear un reproducible ejemplo, con los datos:
require(foreign)
require(mice)
require(pan)
dt.fail <- read.csv("http://goo.gl/pg8um")
dt.fail$X <- NULL
dt.fail$out <- as.factor(dt.fail$out )
dt.fail$grp<- as.factor(dt.fail$grp)
dt.fail$v1<- as.factor(dt.fail$v1)
dt.fail$v2<- as.factor(dt.fail$v2)
dt.fail$v3 <- as.factor(dt.fail$v3)
dt.fail$v7<- as.factor(dt.fail$v7)
dt.fail$v8 <- as.factor(dt.fail$v8)
dt.fail$v9 <- as.factor(dt.fail$v9)
dt.fail$v11 <- as.factor(dt.fail$v11)
dt.fail$v12 <- as.factor(dt.fail$v12)
PredMatrix <- quickpred(dt.fail)
PredMatrix['CTP',] <- c(1,-2,0,0,0,0,0,0,0,0,1,0,1,1,0,2)
impute = mice(
data=dt.fail,
m = 1,
maxit = 1,
imputationMethod = c(
"logreg", # out
"", # grp ----> cluster grouping factor
"pmm", # v1
"polyreg", # v2
"logreg", # v3
"pmm", # v4
"logreg", # v5
"logreg", # v6
"polyreg", # v7 ----> auxilliary
"polyreg", # v8 ----> auxilliary
"polyreg", # v9 ----> auxilliary
"polyreg", # v10 ----> auxilliary
"", # v11 ----> complete
"", # v12 ----> complete
"2l.pan", # CTP ----> multilevel imputation
""), # const ----> needed for multilevel impuitation
predictorMatrix = PredMatrix, seed = 101
)
Y para completar, aquí es el predictor de la matriz que estaba usando:
. out grp v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 CTP const
out 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0
grp 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
v1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0
v2 0 0 0 0 0 1 1 1 0 1 0 0 1 1 1 0
v3 0 0 0 0 0 1 1 1 0 1 1 0 1 1 1 0
v4 0 0 0 1 1 0 1 1 0 1 1 0 1 1 1 0
v5 1 1 0 0 0 0 0 1 0 1 0 0 1 0 0 0
v6 1 1 0 1 0 1 1 0 0 1 0 0 1 0 0 0
v7 0 0 0 0 0 0 1 1 0 1 0 0 0 1 0 0
v8 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0
v9 0 0 0 0 1 1 1 1 0 1 0 0 1 1 1 0
v10 0 0 0 0 0 0 1 1 0 1 0 0 1 1 0 0
v11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
v12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
CTP 1 -2 0 0 0 0 0 0 0 0 1 0 1 1 0 2
const 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0