Exercício 1 - disciplina de Modelos de Regressão

14 de Dezembro de 2015, por Ana Paula Francisco

Script R - Exercício 1

 

Importação de base de dados

>exe1=read.csv(file=”exercicio1.csv”, head=TRUE, dec=”,”)

 

>attach(exe1) #Comentário: o comando attach serve para o programa reconhecer cada coluna como um vetor nomeando-a com o nome da coluna.

 

 

Verificação da frequência

>jpeg(filename="freq_peso.jpeg")

>hist(Peso)

>dev.off()

 

 

>jpeg(filename="freq_idade.jpeg")

>hist(Idade)

>dev.off()

 

>jpeg(filename="freq_altura.jpeg")

>hist(Altura)

>dev.off()

 

 

Verificação de distribuição normal

 

> shapiro.test(Peso)

 

Shapiro-Wilk normality test

 

data: Peso

W = 0.924, p-value = 0.3204

 

> shapiro.test(Idade)

 

Shapiro-Wilk normality test

 

data: Idade

W = 0.9546, p-value = 0.7055

 

> shapiro.test(Idade)

 

Shapiro-Wilk normality test

 

data: Idade

W = 0.9546, p-value = 0.7055

 

 

Estatística descritiva

 

>summary(exe1)

 

Peso Idade Altura

Min. :51.00 Min. : 6.000 Min. :42.00

1st Qu.:55.75 1st Qu.: 7.750 1st Qu.:48.75

Median :61.00 Median : 9.000 Median :53.00

Mean :62.75 Mean : 8.833 Mean :52.75

3rd Qu.:68.75 3rd Qu.:10.000 3rd Qu.:57.50

Max. :77.00 Max. :12.000 Max. :62.00

SD 8.9861 1.898963 6.824088

 

 

COVARIÂNCIA

 

> cov(exe1)

Peso Idade Altura

Peso 80.75000 13.136364 49.931818

Idade 13.13636 3.606061 7.954545

Altura 49.93182 7.954545 46.568182

 

Cov(y x1)= 13.136364

 

Cov(y x2)= 49.931818

 

 

CORRELAÇÃO

 

> cor(exe1)

Peso Idade Altura

Peso 1.0000000 0.7698168 0.8142569

Idade 0.7698168 1.0000000 0.6138386

Altura 0.8142569 0.6138386 1.0000000

 

r (y x1) = 0.7698168

r (y x2)= 0.8142569

 

> cor.test(Peso,Idade, method="spearman")

 

Spearman's rank correlation rho

 

data: Peso and Idade

S = 72.3694, p-value = 0.005244

alternative hypothesis: true rho is not equal to 0

sample estimates:

rho

0.74696

 

Mensagens de aviso perdidas:

In cor.test.default(Peso, Idade, method = "spearman") :

Impossível calcular o valor exato de p com empates

 

> cor.test(Peso,Altura, method="spearman")

 

Spearman's rank correlation rho

 

data: Peso and Altura

S = 68.2373, p-value = 0.004014

alternative hypothesis: true rho is not equal to 0

sample estimates:

rho

0.7614082

 

Mensagens de aviso perdidas:

In cor.test.default(Peso, Altura, method = "spearman") :

Impossível calcular o valor exato de p com empates

 

 

Desenhando diagrama de distribuição:

 

>jpeg(filename="plot_peso_altura.jpg")

> model=lm(Peso~Altura)

> plot(Peso~Altura)

> model=lm(Peso~Altura)

> plot(Peso~Altura)

> abline(model)

> dev.off()

X11cairo

 

REGRESSÃO LINEAR SIMPLES

 

Peso x Idade

 

> peso_idade.lm=lm(Peso~Idade)

> summary(peso_idade.lm)

 

Call:

lm(formula = Peso ~ Idade)

 

Residuals:

Min 1Q Median 3Q Max

-11.000 -3.911 1.143 4.071 10.000

 

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) 30.5714 8.6137 3.549 0.00528 **

Idade 3.6429 0.9551 3.814 0.00341 **

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

 

Residual standard error: 6.015 on 10 degrees of freedom

Multiple R-squared: 0.5926, Adjusted R-squared: 0.5519

F-statistic: 14.55 on 1 and 10 DF, p-value: 0.003407

 

ANOVA: tabela de variâncias

 

> anova(peso_idade.lm)

Analysis of Variance Table

 

Response: Peso

Df Sum Sq Mean Sq F value Pr(>F)

Idade 1 526.39 526.39 14.547 0.003407 **

Residuals 10 361.86 36.19

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

 

 

Peso x Altura

 

> peso_altura.lm=lm(Peso~Altura)

> summary(peso_altura.lm)

 

Call:

lm(formula = Peso ~ Altura)

 

Residuals:

Min 1Q Median 3Q Max

-5.8736 -3.8973 -0.4402 2.2624 11.8375

 

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) 6.1898 12.8487 0.482 0.64035

Altura 1.0722 0.2417 4.436 0.00126 **

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

 

Residual standard error: 5.471 on 10 degrees of freedom

Multiple R-squared: 0.663, Adjusted R-squared: 0.6293

F-statistic: 19.67 on 1 and 10 DF, p-value: 0.001263

 

ANOVA: tabela de variâncias

 

> anova(peso_altura.lm)

Analysis of Variance Table

 

Response: Peso

Df Sum Sq Mean Sq F value Pr(>F)

Altura 1 588.92 588.92 19.675 0.001263 **

Residuals 10 299.33 29.93

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

 



Análise de resíduos

14 de Dezembro de 2015, por Ana Paula Francisco

Análise de resíduos

Existe a função "resid()" utilizada em conjunto com a função par(mfrow=c(2,2)) e plot() que fornecem  interessantes gráficos p/ análise de residuos (gráfico anexo em Galeria de imagens). Porém acabei descobrindo que a função resid não fornece os resídulos "padronizados". Por isso acabo utilizando a seguinte sequência p/ fazer o gráfico de resíduos:

 >fit=fitted(modelo)

>residuos=rstandard(modelo)

>plot(resíduos~fit)

 

Para conferir, os valores dos resíduos do exerício 1 são:


-0.02673038  0.31503057 -0.31763269 -1.71902068 -1.08133859  0.23464886  2.33838778 -0.62556745 -0.51841712

 0.48428555  0.21180254  0.42356122

 O Gráfico encontra-se em anexo (Rplot_resíduos).