我使用摘要进行线性回归,通常摘要使用因子级别的名称标记系数。但是,当我使用options(contrasts=c("contr.sum","contr.poly"))
时,摘要会出现使用variablename1,variablename2标记系数,而不是使用级别的名称。我怎样才能让它显示级别名称呢?
如果我必须手动完成,我怎么知道哪个级别的系数是多少?
我会为每个因素手动定义对比度,如果需要,还可以定义标签,如下所示:
data(iris)
contrasts(iris$Species)
#> versicolor virginica
#> setosa 0 0
#> versicolor 1 0
#> virginica 0 1
lm(Sepal.Length ~ Species, data = iris)
#>
#> Call:
#> lm(formula = Sepal.Length ~ Species, data = iris)
#>
#> Coefficients:
#> (Intercept) Speciesversicolor Speciesvirginica
#> 5.006 0.930 1.582
contrasts(iris$Species) <- contr.sum(3)
colnames(contrasts(iris$Species)) <- c("_setosa", "_versicolor")
contrasts(iris$Species)
#> _setosa _versicolor
#> setosa 1 0
#> versicolor 0 1
#> virginica -1 -1
lm(Sepal.Length ~ Species, data = iris)
#>
#> Call:
#> lm(formula = Sepal.Length ~ Species, data = iris)
#>
#> Coefficients:
#> (Intercept) Species_setosa Species_versicolor
#> 5.84333 -0.83733 0.09267