• Nenhum resultado encontrado

Exemplo de Regressão Linear Simples

N/A
N/A
Protected

Academic year: 2022

Share "Exemplo de Regressão Linear Simples"

Copied!
7
0
0

Texto

(1)

Exemplo de Regressão Linear Simples

Dados: Valores de vendas de empresas do ramo de bebidas, sendo:

Y = Total das vendas (US$10mil) e X = gastos com propaganda.

X 11 5 3 9 12 6 5 9

Y 25 13 8 20 25 12 10 15

Figura 1: Gráfico de pontos de Y versus X.

I) Somas e somas de quadrados:

a)x  11  5  3  9  12  6  5  9  60

b)x

2

 121  25  9  81  144  36  25  81  522 c)y  25  13  8  20  25  12  10  15  128

d)y

2

 625  169  64  400  625  144  100  225  2352 e)xy  275  65  24  180  300  72  50  135  1101

II) Médias e variâncias amostrais:

a) 7 . 50

8 60 

x e 16 . 0

8 128 

y

b) S

x2

  x

2

n x

2

 522  8 ( 7 . 5 )

2

 72 e

7

2

 72

s

x

(2)

c) S

y2

  y

2

n y

2

 2352  8 ( 16 )

2

 304 e

7

2

 304 s

y

d) S

xy2

  xyn x y  1101  8 ( 7 . 5 )( 16 )  141 e

7

 141 s

xy

e) Correlaۥo entre X e Y: 0 . 953

304 72

141

2

2

 

y x

xy xy

s s

r s (muito alta)

III) Estimativas dos coeficientes de regress•o:

a) 1 . 958

72 ˆ 141

1

2

 

x xy

S

S e ˆ ˆ 1 . 312

1

0

   

y x

b) Reta ajustada: y ˆ   ˆ

0

  ˆ

1

x  1 . 312  1 . 958 x

c) Coeficiente de determinaۥo: ( ) 0 . 908

304 72

) 141

(

2 2

2 2

2

2

 

 

xy

y x

xy

r

S S

R S ,

ou seja, a porcentagem da varia€•o de Y explicada pela reta ajustada ƒ de 90.8%.

IV) Valores ajustados e res„duos:

y

i

y ˆ

i

  ˆ

0

  ˆ

1

x

i

e

i

y

i

y ˆ

i

25 22.85 2.15

13 11.10 1.89

8 7.19 0.81

20 18.94 1.06

25 24.81 0.19

12 13.06 -1.06

10 11.10 -1.10

15 18.94 -3.94

V) Tabela de Analise de vari…ncia:

125 . 276 ˆ )

( 

2

  y y

SQRegr

i

875 . 27 ˆ )

( 

2

  y

i

y

i

SQRes

304 )

( 

2

2

  y

i

y S

y

SQTotal

Nota: SQTotalSQRegrSQRes  276 . 125  27 . 875  304

(3)

ANOVA

Fonte de Variação GL SQ QM F Valor p

Regressão 1 276.125 276.125 59.435 0.0002497

Resíduos 6 27.875 4.64583

Total 7 304.000

Observações:

i) Hipóetes para a tabela ANOVA: H

0

: 

1

 0  H

A

: 

1

 0 ;

ii) O valor F da tabela ANOVA, sob a hipótese nula, tem distribuição F com 1 e 6 graus de liberdade, associados aos graus de liberdade da regressão e resíduos, respectivamente, ou seja:

FF

1;6

iii) O valor p associado do teste F é obtido de pPF

1;6

59 . 435   0 . 0002497 . No R este valor é calculado com o comando: 1-pf(59.435,1,6)

VI) Análise dos resíduos: Realizados os cálculos e análises anteriores, vamos avaliar os resíduos para avaliar a qualidade do ajuste. (normalidade, igualdade de variâncias e independência)

Figura 2: Gráfico 41 para análise dos resíduos.

A questão que fica: O que dizer desse ajuste?

(4)

# Exemplo 1 - Dados qualidade do ar

###################################

Sol.R <- c(190,118,149,313,299,99,256,290,274,65,334,307,78,322,44,8,320,25,92, 13,252,279,127,291,323,148,191,37,120,137,248,236,175,314,276,267, 272,175,264,175)

Wind <- c(7.4,8,12.6,11.5,8.6,13.8,9.7,9.2,10.9,13.2,11.5,12,18.4,11.5,9.7,9.7, 16.6,9.7,12,12,14.9,7.4,9.7,13.8,11.5,8,14.9,9.2,11.5,10.3,9.2,9.2, 4.6,10.9,5.1,6.3,5.7,7.4,14.3,14.9)

Temp <- c(67,72,74,62,65,59,69,66,68,58,64,66,57,68,62,59,73,61,61,67,81,76,82, 90,87,82,77,65,73,76,85,81,83,83,88,92,92,89,73,81)

Ozone <- c(41,36,12,18,23,19,16,11,14,18,14,34,6,30,11,1,11,4,32,23,45,37,29,71, 39,23,21,20,12,13,49,32,64,40,77,97,97,85,10,27)

cor(cbind(Ozone,Sol.R,Wind,Temp)) # corelações plot(Sol.R,Ozone,pch=19)

plot(Wind,Ozone,pch=19) plot(Temp,Ozone,pch=19)

## Ajustando o modelo para as variáveis Ozone vs. Temp

## X = Temp e Y = Ozone

## --- n <- length(Temp)

xbar <- mean(Temp) ybar <- mean(Ozone)

Sx2 <- sum(Temp^2)-n*(xbar^2) Sy2 <- sum(Ozone^2)-n*(ybar^2) Sxy <- sum(Ozone*Temp)-n*xbar*ybar rxy <- Sxy/sqrt(Sx2*Sy2)

beta1 <- Sxy/Sx2

beta0 <- ybar-beta1*xbar c(beta0,beta1)

ych <- beta0+beta1*Temp # valores ajustados res <- Ozone-ych # resíduos

# Análise gráfica dos resíduos

par(mfrow = c(2,2)) # esse comando divide a janela gráfica numa matriz 2x2

# histograma dos resíduos

hist(res, col = "bisque", xlab="Resíduos padronizados", ylab=" ", main="Histograma dos Resíduos", cex.main=1)

# gráfico normal qq-plot dos resíduos

qqnorm(res, pch=19, col="red", xlab="Quantis teóricos", ylab="Quantis amostrais", main="Normal Q-Q plot dos Resíduos", cex.main=1) qqline(res, col="blue3")

# gráfico resíduos x valores ajustados

plot(ych,res,pch=19,col="red", xlab="Valores ajustados", ylab="Resíduos padronizados", main="Resíduos x Ajustados", cex.main=1)

lines(c(0,max(ych)),c(0,0),lty=2)

# resíduos x ordem (timeplot)

plot(res, main="Resíduos x ordem", ylab="Resíduos padronizados", pch=19, col="red3", cex.main=1)

lines(res, col="blue3")

lines(c(0,max(ych)),c(0,0),lty=2) par(mfrow = c(1,1))

(5)

# gráfico de pontos com modelo ajustado

plot(Temp,Ozone,pch=19, xlab="Temperatura", ylab="Conc.Ozone (ppm)", main="Gráfico XY", cex.main=1)

lines(Temp[order(Temp)],ych[order(Temp)], col="blue3", lwd=2)

# Exemplo 2 - Dados com função quadrática

#########################################

x <- c(2.5,3.6,5.0,3.7,3.8,3.2,4.3,3.6,4.6,4.3,4.3,4.2,3.0,2.1,2.6,3.1,2.0, 2.2,4.9,4.0,4.9,3.3,2.5,3.5,4.1,2.6,3.9,4.6,4.1,2.3,4.6,3.5,4.4,3.6, 2.9,2.7,4.7,3.6,3.8,3.8)

y <- c(27.2,43.0,146.6,73.4,57.6,37.1,82.0,74.0,104.1,70.8,79.3,105.9,27.5, 21.3,42.6,45.3,18.5,12.2,135.0,70.4,138.9,36.2,26.6,51.3,76.4,14.5, 71.4,130.7,89.3,23.9,111.2,61.6,101.4,77.6,36.8,16.4,144.0,72.1,83.0, 57.5)

cor(x,y)

plot(x,y,pch=19) # gráfico de pontos com relação quadrática entre X e Y

## Ajustando o modelo linear entre X e Y

## ---

ajuste <- lm(y~x) # modelo RLS com variável quadrática coef(ajuste) # coeficientes beta0 e beta1 estimados summary(ajuste) # testes de hipóteses

aov(ajuste) # somas de quadrados

# Análise gráfica dos resíduos

# ---

res <- ajuste$res # resíduos

sdres <- rstandard(ajuste) # resíduos padronizados ych <- ajuste$fit # valores ajustados

par(mfrow = c(2,2)) # esse comando divide a janela gráfica numa matriz 2x2

# histograma dos resíduos

hist(sdres, col = "bisque", xlab="Resíduos padronizados", ylab=" ", main="Histograma dos Resíduos", cex.main=1)

# gráfico normal qq-plot dos resíduos

qqnorm(sdres, pch=19, col="red", xlab="Quantis teóricos", ylab="Quantis amostrais", main="Normal Q-Q plot dos Resíduos", cex.main=1) qqline(sdres, col="blue3")

# gráfico resíduos x valores ajustados

plot(ych,sdres,pch=19,col="red", xlab="Valores ajustados", ylab="Resíduos padronizados", main="Resíduos x Ajustados", cex.main=1)

lines(c(min(ych),max(ych)),c(0,0),lty=2)

# resíduos x ordem (timeplot)

plot(sdres, main="Resíduos x ordem", ylab="Resíduos padronizados", pch=19, col="red3", cex.main=1)

lines(sdres, col="blue3")

lines(c(0,mlength(sdres)),c(0,0),lty=2) par(mfrow = c(1,1))

(6)

# gráfico do modelo ajustado

#---

plot(x,y,pch=19, xlab="X", ylab="Y", main="Gráfico XY", cex.main=1) lines(x[order(x)],ych[order(x)], col="red2", lwd=2)

## Ajustando o modelo quadrático entre X e Y

## --- x.q <- x^2

ajuste.q <- lm(y~x.q) # modelo RLS com variável quadrática coef(ajuste.q) # coeficientes beta0 e beta1 estimados summary(ajuste.q) # testes de hipóteses

aov(ajuste.q) # somas de quadrados

# Análise gráfica dos resíduos

# ---

res.q <- ajuste.q$res # resíduos

sdres.q <- rstandard(ajuste.q) # resíduos padronizados ych.q <- ajuste.q$fit # valores ajustados

par(mfrow = c(2,2)) # esse comando divide a janela gráfica numa matriz 2x2

# histograma dos resíduos

hist(sdres.q, col = "bisque", xlab="Resíduos padronizados", ylab=" ", main="Histograma dos Resíduos", cex.main=1)

# gráfico normal qq-plot dos resíduos

qqnorm(sdres.q, pch=19, col="red", xlab="Quantis teóricos", ylab="Quantis amostrais", main="Normal Q-Q plot dos Resíduos", cex.main=1)

qqline(sdres.q, col="blue3")

# gráfico resíduos x valores ajustados

plot(ych.q,sdres.q,pch=19,col="red", xlab="Valores ajustados", ylab="Resíduos padronizados", main="Resíduos x Ajustados", cex.main=1)

lines(c(min(ych.q),max(ych.q)),c(0,0),lty=2)

# resíduos x ordem (timeplot)

plot(sdres.q, main="Resíduos x ordem", ylab="Resíduos padronizados", pch=19, col="red3", cex.main=1)

lines(sdres.q, col="blue3")

lines(c(0,length(sdres.q)),c(0,0),lty=2) par(mfrow = c(1,1))

# gráfico do modelo ajustado

#---

plot(x,y,pch=19, xlab="X", ylab="Y", main="Gráfico XY - modelo quadrático em X", cex.main=1)

lines(x[order(x)],ych.q[order(x)], col="red2", lwd=2)

(7)

# Exemplo 3 - Dados gerados

###########################

x1 <- c(18,18,20,23,23,19,22,22,17,20,21,20,17,22,18,22,21,18) x2 <- c(11,12,13,12,13,10,12,12,13,14,11,13,14,13,13,11,13,14) x3 <- c( 6,32,34,66,33,30,41,46,25,33,37,15,34,11,22,49,41,27) y <- c( 3, 6, 9,13, 9, 3,10,12, 8, 8, 8, 7, 8, 1, 6,10,11, 9) cor(cbind(y,x1,x2,x3)) # corelações

## Realize os três ajustes e verifique os testes F para Ho: beta1 = 0 em cada um deles

## --- plot(x2,y,pch=19)

ajuste2 <- lm(y~x2) # modelo RLS entre x2 e y

summary(ajuste2) # Estatística-F: 0.5625 com 1 e 16 GL, p-valor: 0.4641 plot(x2,y,pch=19, xlab="X2", ylab="Y", main="Gráfico Y vs. X2", cex.main=1) lines(x2[order(x2)],ajuste2$fit[order(x2)], col="red2", lwd=2)

plot(x1,y,pch=19)

ajuste1 <- lm(y~x1) # modelo RLS entre x1 e y

summary(ajuste1) # Estatística-F: 3.12 com 1 e 16 GL, p-valor: 0.0964 plot(x1,y,pch=19, xlab="X1", ylab="Y", main="Gráfico Y vs. X1", cex.main=1) lines(x1[order(x1)],ajuste1$fit[order(x1)], col="red2", lwd=2)

plot(x3,y,pch=19)

ajuste1 <- lm(y~x3) # modelo RLS entre x3 e y

summary(ajuste3) # Estatística-F: 34.69 com 1 e 16 GL, p-valor: 0.00002282 plot(x3,y,pch=19, xlab="X3", ylab="Y", main="Gráfico Y vs. X3", cex.main=1) lines(x3[order(x3)],ajuste3$fit[order(x3)], col="red2", lwd=2)

# Exemplo - 4

#############

y <- c(727.86,735.84,426.53,596.63,1035.7,1141.44,658.88,792.8,783.4,644.13, 504.54,774.79,923.65,702.38,925.6)

x1 <- c(25,26,20,23,30,31,25,28,27,24,22,26,28,25,29) x2 <- c(4,2,4,3,7,6,1,3,2,3,1,4,5,6,3)

cor(cbind(y,x1,x2)) # corelações plot(x2,y,pch=19)

ajuste2 <- lm(y~x2) # modelo RLS entre x1 e y

summary(ajuste2) # Verifique a estatística F e o p-valor

plot(x2,y,pch=19, xlab="X2", ylab="Y", main="Gráfico Y vs. X2", cex.main=1) lines(x2[order(x2)],ajuste2$fit[order(x2)], col="red2", lwd=2)

plot(x1,y,pch=19)

ajuste1 <- lm(y~x1) # modelo RLS entre x1 e y

summary(ajuste1) # Verifique a estatística F e o p-valor

plot(x1,y,pch=19, xlab="X1", ylab="Y", main="Gráfico Y vs. X1", cex.main=1) lines(x1[order(x1)],ajuste1$fit[order(x1)], col="red2", lwd=2)

Referências

Documentos relacionados

Ministrar aulas de inglês nas unidades escolares de educação básica; promover o processo de ensino- aprendizagem; planejar aulas; desenvolver coletivamente

Da análise SWOT realizada destacam-se como forças a existência de diversos instrumentos de ordenamento já em vigor, nomeadamente para áreas incluídas na Rede Nacional de

A educação em saúde tem papel primordial no processo de prevenção e reabilitação, pois, o diálogo e a troca de informações entre o paciente, o profissional e sua

Nome Tipo de Dado Informação Place, 04/04/17 LOGO Conceito e Utilidade de Variáveis. ● O nome das variáveis possui restrições: ● Precisa começar com

O aumento de recursos anunciado pelo Ministério da Educação para as universidades federais na reforma universitária, tão festejado pelo governo, é apenas um jogo

Perigo de aspiração Com base nos dados disponíveis, os critérios de classificação não são preenchidos. * SECÇÃO 12:

Dessa forma, este caso para ensino traz uma reflexão de carreira e chama atenção para o processo de escolhas, permanências e mudanças que se tornam

UNIVERSIDAD CAMILO JOSÉ CELA UNIVERSIDAD DE CANTABRIA UNIVERSIDAD CARDENAL HERRERA UNIVERSIDAD CARLOS III DE MADRID UNIVERSIDAD CASTILLA LA MANCHA UNIVERSIDAD CATÓLICA