Predict-Funktion Fehler für Wahrscheinlichkeiten in glmnet?

Ich versuche zu prognostizieren, Wahrscheinlichkeiten in einem dataset mit glmnet. Mein code lautet:

bank <- read.table("http://www.stat.columbia.edu/~madigan/W2025/data/BankSortedMissing.TXT",header=TRUE)
bank$rich<-sample(c(0:1), 233, replace=TRUE)
    train=bank[1:200,];
    test=bank[201:233,]
    x=model.matrix(rich~., bank)[,-1]
    cv.out=cv.glmnet(x, train$rich, alpha=0, family="binomial")
ridge.mod=glmnet(x, train$rich, alpha=0, family="binomial")
    bank$rich <- NULL
newx = data.matrix(test$rich)
ridge.pred=predict(ridge.mod,newx=newx)

train = data[1:2500,];
test = data[2501:5088,];
x=model.matrix(Y~x1+x2+x3+x4+x5+x6, data)[,-1]
cv.out=cv.glmnet(x, data$Y, alpha=0, family="binomial")
    bestlam=cv.out$lambda.min
ridge.mod=glmnet(x, data$Y, alpha=0, family="binomial")
    test$Y <- NULL
newx = data.matrix(test)
ridge.pred = predict(ridge.mod,newx=newx, type="response")

Ich bekomme immer diese Fehlermeldung bei der Verwendung von Vorhersagen:

Fehler.matrix(cbind2(1, newx) %*% nbeta) :
Fehler bei der Bewertung das argument 'x' bei der Auswahl einer Methode für Funktion 'als.matrix': Fehler bei t(.Call(Csparse_dense_crossprod, y, t(x))) :
Fehler bei der Bewertung das argument 'x' bei der Auswahl einer Methode für Funktion 't': Fehler: Cholmod Fehler 'X und/oder Y haben falsche Dimensionen' bei der Datei ../MatrixOps/cholmod_sdmult.c, Zeile 90

Ich habe versucht diese auf den "Jungs" dataset und es funktioniert einwandfrei.

library(ISLR);
library(glmnet)
Hitters=na.omit(Hitters)

Hitters$Rich<-ifelse(Hitters$Salary>500,1,0)
Hitters.train = Hitters[1:200,]
Hitters.test = Hitters[201:dim(Hitters)[1],]
x=model.matrix(Rich~.,Hitters)[,-1]
cv.out=cv.glmnet(x, Hitters$Rich, alpha=0, family="binomial")
    bestlam=cv.out$lambda.min
ridge.mod=glmnet(x, Hitters$Rich, alpha=0,lambda=bestlam, family="binomial")
    Hitters.test$Rich <- NULL
newx = data.matrix(Hitters.test)
ridge.pred=predict(ridge.mod,newx=newx, type="response")
head(ridge.pred)
ridge.pred[1:10,]

Weiß jemand wie ich dies beheben können?

Ich werde die Abstimmung zu schließen, ist diese Frage off-topic, weil es ist über die Verwendung von R ohne ein reproduzierbares Beispiel.
Ich habe eine reproduzierbare Teil über
Danke! Wir werden sehen, ob wir migrieren für Sie jetzt.
Vielen Dank für Eure Hilfe.. Dieses wurde guckten mich für Stunden.
Nur zu-tag-eine Antwort auf diese Antwort, da es das erste google-Ergebnis für diesen speziellen Fehler. Zusätzlich zu den null Problem, verursacht durch die Verwendung dieser Funktion mit model.matrix dieser Fehler kann auch auftreten, wenn Sie Ihre test-x nicht die gleichen Variablen finden sich in den Zug x.

InformationsquelleAutor | 2015-03-12

Schreibe einen Kommentar