【发布时间】:2013-06-23 13:40:22
【问题描述】:
使用以下数据:
我想知道如何将预定义的偏移量拟合到另一个模型的原始关系,即如何拟合模型 A 的估计值,因此:
ModelA<-lm(Dependent1~Explanatory)
因此模型 B:
ModelB<-lm(Dependent2~Explanatory)
解释变量是我的数据集中的变量“分类”或变量“连续”。我得到了一个与简历上类似问题相关的有用答案:
https://stats.stackexchange.com/questions/62584/how-to-fit-a-specific-model-to-some-data
这里的解释变量是“连续的”。但是,我有一些额外的问题需要回答,我认为这些问题可能更适合 SO。如果不是这种情况,请告诉我,我会删除这个问题:)
具体来说,我在上面的链接中被告知,为了在我的数据集中为连续解释变量拟合预定义的斜率,我应该这样做:
lm( Dependent2 ~ 1 + offset( Slope * Continuous ) )
其中坡度是取自模型 A 的预定义坡度。效果很好。
现在我想知道,当 x 是具有两个级别的分类变量,然后当 x 是具有二次项即 x+x^2 的连续变量时,我该怎么做?
对于我正在尝试的二次项:
lm( Dependent2 ~ 1 + offset( Slope * Continuous )+ offset( Slope2 * I((Continuous)^2)) )
其中 Slope 是连续项的固定估计值,Slope2 是二次项的固定估计值。
但是,我不确定如何使它适用于分类变量。当我尝试将偏移量设置为:
lm( Dependent2 ~ 1 + offset( Slope * Categorical ) )
其中,斜率是从模型 A 中获取的固定估计的斜率值,我得到一个错误:
"Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 0 (non-NA) cases
In addition: Warning message:
In Ops.factor(0.25773, Categorical) : * not meaningful for factors"
如果有人对如何为分类变量创建偏移量提供意见,将不胜感激:)
【问题讨论】:
-
我猜
offset想要对因子进行虚拟编码。可以通过reproducible code and data 给出更好的答案。 -
嗨 Roland,我添加了一些原始数据并澄清了解释。我希望这会有所帮助。
标签: r modeling lm categorical-data