将update()与'tsls'类对象一起使用

时间:2011-04-07 19:43:01

标签: r

有没有办法在sem包中通过tsls()创建的对象上使用update()?例如,我想做这样的事情:

library(sem)
data(Kmenta)
mod1 <- tsls(Q ~ P, ~ D, data=Kmenta)
mod2 <- update(mod1, . ~ ., ~ D + F)

此示例的前三行有效。他们创建了一个tsls对象,其中D是P的工具。

我希望示例的最后一行创建另一个tsls对象,其中D和F都是P的工具。但是当我尝试执行最后一行时,R告诉我

Error in update.default(mod1, . ~ ., ~D + F) : 
  need an object with call component

我应该以不同的方式调用update(),还是需要找到制作mod2对象的另一种方法?

我正在使用R 2.11.1和sem 0.9-21。

1 个答案:

答案 0 :(得分:2)

tsls不会将调用保存在对象中,因此您无法使用更新函数来使用旧版本修改模型。你可以按照适合mod1的方式调整mod2,遗憾的是需要重新计算。