2015-06-25 2 views
2

Я хотел бы сделать линейную регрессию с y, являющейся моей зависимой переменной, и x1 x2 x3 - мои независимые переменные. У меня также есть «контрольные» переменные z1 z2 z3, которые я бы хотел включить, но не отображать результаты.R: Скрыть контрольные переменные с дисплея lm

summary(lm(y~x1+x2+x3+z1+z2+z3)) 

Есть ли способ для обобщения не отображать коэффициенты для моих переменных управления?

+4

Вы можете просто выбрать любые значения, которые вы хотите от объекта 'summary.lm' и отобразить его, как вам нравится. См. Страницу справки '? Summary.lm'. Было бы глупо использовать метод печати по умолчанию, позволяющий скрыть переменные, поскольку это будет очень запутанным. – MrFlick

ответ

4

Как @MrFlick предложил, используя summary.lm может помочь.

Код:

# Build Sample Data 
df <- data.frame(y = rnorm(100), x1 = rnorm(100), x2 = rnorm(100), x3 = rnorm(100), z1 = rnorm(100), z2 = rnorm(100), z3 = rnorm(100)) 

# Run Model 
sum <- summary.lm(lm(y ~ x1 + x2 + x3 + z1 + z2 + z3, data = df)) 

# Remove z1:z3 
sum$coefficients <- sum$coefficients[1:4,] 

# Print Results 
print(sum) 

Выход:

Call: 
lm(formula = y ~ x1 + x2 + x3 + z1 + z2 + z3, data = df) 

Residuals: 
    Min  1Q Median  3Q  Max 
-2.76472 -0.56958 -0.02673 0.50188 2.61362 

Coefficients: 
      Estimate Std. Error t value Pr(>|t|) 
(Intercept) 0.18092 0.09966 1.815 0.0727 . 
x1   0.12282 0.10231 1.201 0.2330 
x2   -0.22411 0.10781 -2.079 0.0404 * 
x3   -0.01096 0.09554 -0.115 0.9090 
--- 
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 0.9596 on 93 degrees of freedom 
Multiple R-squared: 0.07717, Adjusted R-squared: 0.01763 
F-statistic: 1.296 on 6 and 93 DF, p-value: 0.2667 
Смежные вопросы