【问题标题】:Unable to find an inherited method for function ‘sim’ for signature ‘"Zelig-ls"’找不到签名“Zelig-ls”的函数“sim”的继承方法
【发布时间】:2017-04-11 20:38:53
【问题描述】:

使用 R,当我运行下面的代码时,我收到一条错误消息。

代码:

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"’        

除以下行外,所有其他行均有效: s.out &lt;- sim(z.out0, x = x.out0, x1= x1.out0)

有人可以向我解释错误信息吗?谢谢!

【问题讨论】:

    标签: r r-zelig


    【解决方案1】:

    这可能与“sim”功能存在于您已加载的另一个包中这一事实有关。如果是这种情况,则该功能被“屏蔽”。

    使用您要使用的包的名称,然后是两次“:”,然后是您要使用的特定功能的名称。在你的情况下,它变成: s.out0 &lt;- Zelig::sim(z.out0, x = x.out0, x1= x1.out0).

    最好的

    【讨论】:

      猜你喜欢
      • 2021-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多