2017-04-11 3 views
0

Wenn ich R benutze, erhalte ich eine Fehlermeldung, wenn ich den Code unten ausführe.Es konnte keine geerbte Methode für die Funktion 'sim' für die Signatur gefunden werden '' Zelig-ls ''

Code:

library(MatchIt) 
library(Zelig) 
lw.y2loswt<-newcombined 
matchIt.y2loswt <- matchit(y2_LOSWT ~ y0_HLTHTH + y0_THINIMP + y0_DRELAT       
    + y0_DPARENT + y0_DFRIEND + y0_AGE910 + y0_RACE + y0_CATINC + y0_CATEDUC 
    + y0_SOCCP + y0_PARENTS + y0_SELWT + y0_ATHCP, data = lw.y2loswt, method="full") 
matchIt.y2loswt 
summary(matchIt.y2loswt) 

data.y2loswt.matchIt<-match.data(matchIt.y2loswt) 
z.out0 <- zelig(y10_SUMSKIN ~ y2_LOSWT +y0_HLTHTH + y0_THINIMP +   
y0_DRELAT + y0_DPARENT + y0_DFRIEND + y0_AGE910 + y0_RACE + y0_CATINC + 
y0_CATEDUC + y0_SOCCP + y0_PARENTS + y0_SELWT + y0_ATHCP, data = 
data.y2loswt.matchIt, model = "ls") 
x.out0 <- setx(z.out0, y2_LOSWT = 0) 
x1.out0 <- setx(z.out0, y2_LOSWT = 1) 
s.out0 <- sim(z.out0, x = x.out0, x1= x1.out0) 

#Error message: 
#s.out0 <- sim(z.out0, x = x.out0, x1= x1.out0)  
#Error in (function (classes, fdef, mtable) :  
# unable to find an inherited method for function ‘sim’ for signature ‘"Zelig-#ls"’   

Alle anderen Linien arbeiten mit Ausnahme der Linie: s.out <- sim(z.out0, x = x.out0, x1= x1.out0)

Kann jemand die Fehlermeldung zu mir erklären? Vielen Dank!

Antwort

0

Es ist wahrscheinlich mit der Tatsache verbunden, dass 'Sim' Funktion existiert in einem anderen Paket, das Sie geladen haben. Wenn dies der Fall ist, ist die Funktion "maskiert".

Verwenden Sie den Namen des Pakets, das Sie verwenden möchten, dann zweimal ":" dann den Namen der bestimmten Funktion, die Sie verwenden möchten. In Ihrem Fall wird es: s.out0 <- Zelig::sim(z.out0, x = x.out0, x1= x1.out0).

Beste

Verwandte Themen