In [1]:
# rm(list=ls())
options(OutDec = ",") 
#===================================================================
# Exemplo do rendimento em função da idade, educação e n° de filhos.
#===================================================================
# Análise para os dados completos.
#===================================================================
dataxy   <- read.table("../dados/exemplo_12.txt",header=T)
lnganhos <- log(dataxy[1:428,2]*dataxy[1:428,7])
idade    <- dataxy[1:428,5]
idade2   <- idade^2
educacao <- dataxy[1:428,6]
filhos   <- as.vector((dataxy[1:428,3]+dataxy[1:428,4])>=1,
            mode="numeric")
yfit     <- lm(lnganhos ~ idade + idade2 + educacao + filhos)
print(summary(yfit))
Call:
lm(formula = lnganhos ~ idade + idade2 + educacao + filhos)

Residuals:
    Min      1Q  Median      3Q     Max 
-4,5305 -0,5266  0,3003  0,8474  1,7568 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)   
(Intercept)  3,2400965  1,7674296   1,833  0,06747 . 
idade        0,2005573  0,0838603   2,392  0,01721 * 
idade2      -0,0023147  0,0009869  -2,345  0,01947 * 
educacao     0,0674727  0,0252486   2,672  0,00782 **
filhos      -0,3511952  0,1475326  -2,380  0,01773 * 
---
Signif. codes:  0 ‘***’ 0,001 ‘**’ 0,01 ‘*’ 0,05 ‘.’ 0,1 ‘ ’ 1

Residual standard error: 1,19 on 423 degrees of freedom
Multiple R-squared:  0,041,	Adjusted R-squared:  0,03193 
F-statistic: 4,521 on 4 and 423 DF,  p-value: 0,001382

In [2]:
#===================================================================
# Tabela anova.
#===================================================================
print("===========================================================")
print(anova(yfit))  # versão 1
print("===========================================================")
X        <- cbind(idade,idade2,educacao,filhos)
yfit2    <- lm(lnganhos ~ X)
print(anova(yfit2)) # versão 2
[1] "==========================================================="
Analysis of Variance Table

Response: lnganhos
           Df Sum Sq Mean Sq F value   Pr(>F)   
idade       1   3,46  3,4606  2,4420 0,118877   
idade2      1   4,27  4,2744  3,0162 0,083164 . 
educacao    1   9,86  9,8599  6,9575 0,008654 **
filhos      1   8,03  8,0304  5,6666 0,017733 * 
Residuals 423 599,46  1,4172                    
---
Signif. codes:  0 ‘***’ 0,001 ‘**’ 0,01 ‘*’ 0,05 ‘.’ 0,1 ‘ ’ 1
[1] "==========================================================="
Analysis of Variance Table

Response: lnganhos
           Df Sum Sq Mean Sq F value   Pr(>F)   
X           4  25,63  6,4064  4,5206 0,001382 **
Residuals 423 599,46  1,4172                    
---
Signif. codes:  0 ‘***’ 0,001 ‘**’ 0,01 ‘*’ 0,05 ‘.’ 0,1 ‘ ’ 1
In [3]:
#===================================================================
# Matriz de covariâncias.
#===================================================================
options(digits=4)  
vcovfit <- vcov(yfit)
print(vcovfit) 
            (Intercept)      idade     idade2   educacao     filhos
(Intercept)    3,123808 -1,441e-01  1,662e-03 -9,261e-03  2,675e-02
idade         -0,144090  7,033e-03 -8,232e-05  5,085e-05 -2,641e-03
idade2         0,001662 -8,232e-05  9,739e-07 -4,976e-07  3,841e-05
educacao      -0,009261  5,085e-05 -4,976e-07  6,375e-04 -5,462e-05
filhos         0,026749 -2,641e-03  3,841e-05 -5,462e-05  2,177e-02
In [4]:
#===================================================================
# Intervalos de confiança.
#===================================================================
print(confint(yfit))   
                2,5 %     97,5 %
(Intercept) -0,233942  6,7141351
idade        0,035723  0,3653920
idade2      -0,004254 -0,0003749
educacao     0,017844  0,1171010
filhos      -0,641184 -0,0612069
In [5]:
#===================================================================
# Fim
#===================================================================