2011-04-07 47 views
1

有没有一种方法可以在通过sem包中的tsls()创建的对象上使用update()?例如,我想要做这样的事情:使用更新()与'tsls'类的对象

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(),或者我需要找到使模2物体的另一种方式?

我使用R 2.11.1和sem 0.9-21。

回答

2

tsls不会保存对象中的调用,因此您不能使用更新函数来使用旧配合来重新构建模型。你可以像mod1那样适合mod2,这将不幸需要重新计算。

+0

谢谢。这有助于我理解我得到的错误信息。 – user697473 2011-04-08 02:33:50

+0

没问题。如果您对答案满意,请将其标为正确:D – jberg 2011-04-08 08:55:23