R lm()函数中是否有办法隐藏来自因子的系数?

3

我有一个带有许多不同类型的固定效应的模型,但我只对几个回归变量感兴趣,而不是那些固定效应本身。我发现包含as.factor变量来拥有固定效应比使用within估计器更容易。然而,有没有可能抑制这些因子系数的输出呢?


1
你是否真的使用了 as.factor() 来调用固定效应?就像这样:lm(y~x+as.factor(f),data=df)?还是它们已经是因子,你相信 lm() 会将它们视为因子?即 lm(y~x+f,data=df) - CephBirk
它们已经是因子了,lm正在以这种方式处理它们。 - wolfsatthedoor
1个回答

1

我相信这应该可以工作... 如果你的模型命名为m,那么尝试这样做:

coef(m)[!names(coef(m)) %in% paste0(rep(names(m$xlevels), times=sapply(m$xlevels, length)), unlist(sapply(names(m$xlevels), function(x) m$xlevels[[x]])))]

虽然不太美观,但这个概念是使用lm对象的xlevels属性来识别系数中的因子,并将它们从系数列表中删除。其余部分只是我能找到的最好的方法来正确地格式化。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接