如何使用summary()按级别名称将R标记为因子?

问题描述 投票:1回答:1

我使用摘要进行线性回归,通常摘要使用因子级别的名称标记系数。但是,当我使用options(contrasts=c("contr.sum","contr.poly"))时,摘要会出现使用variablename1,variablename2标记系数,而不是使用级别的名称。我怎样才能让它显示级别名称呢?

如果我必须手动完成,我怎么知道哪个级别的系数是多少?

r linear-regression
1个回答
0
投票

我会为每个因素手动定义对比度,如果需要,还可以定义标签,如下所示:

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
© www.soinside.com 2019 - 2024. All rights reserved.