stack.dat<-scan(what=list(x1=0,x2=0,x3=0,y=0)) 80 27 89 42 80 27 88 37 75 25 90 37 62 24 87 28 62 22 87 18 62 23 87 18 62 24 93 19 62 24 93 20 58 23 87 15 58 18 80 14 58 18 89 14 58 17 88 13 58 18 82 11 58 19 93 12 50 18 89 8 50 18 86 7 50 19 72 8 50 19 79 8 50 20 80 9 56 20 82 15 70 20 91 15 attach(stack.dat) y<-stack.dat$y x1<-stack.dat$x1 x2<-stack.dat$x2 x3<-stack.dat$x3 n<-length(y) Y<-cbind(y,x1,x2,x3) pairs(Y) stack.fit<-lm(y~x1+x2+x3) stack.fit lms<-summary(stack.fit) lms anova(stack.fit) stack0.fit<-lm(y~x1+x2) anova(stack0.fit,stack.fit) fit.model<-stack0.fit X<-model.matrix(fit.model) p<-ncol(X) n<-length(y) s<-lms$sigma r<-resid(lms) h<-lm.influence(fit.model)$hat ti<-r/(s*sqrt(1-h)) tsi<-ti*sqrt((n-p-1)/(n-p-ti^2)) yh<-fitted(fit.model) ###envelope#### ###envelope#### form=y~1+x1+x2 envelope.normal(form,k=20,alfa=0.05) win.graph() par(mfrow=c(2,2)) #####grafico do residuos plot(tsi,xlab="indice",ylab="Residuo Studentizado") abline(-2,0,lty=2) abline(2,0,lty=2) identify(tsi) plot(yh,tsi,xlab="Valores ajustados",ylab="Residuo Studentizado") abline(-2,0,lty=2) abline(2,0,lty=2) identify(tsi,yh) plot(x1,tsi,xlab="x1",ylab="Residuo Studentizado") abline(-2,0,lty=2) abline(2,0,lty=2) identify(x1,tsi) plot(x2,tsi,xlab="x2",ylab="Residuo Studentizado") abline(-2,0,lty=2) abline(2,0,lty=2) identify(x2,tsi) #####graficos de diagnosticos win.graph() par(mfrow=c(2,2)) plot(h,xlab="indice",ylab="Leverage") abline(2*p/n,0,lty=2) abline(3*p/n,0,lty=3) identify(h,n=2) di<-(ti^2)*h/(p*(1-h)) plot(di,xlab="indice",ylab="DCook") dfit<-abs(tsi)*sqrt(h/(1-h)) plot(dfit,xlab="indice",ylab="DFFITS") abline(2*sqrt(p/(n-p)),0,lty=2) identify(dfit) #########Influencia Local r<-resid(fit.model) R<-diag(r) X<-model.matrix(fit.model) H<-X%*%solve(t(X)%*%X)%*%t(X) A<-R%*%H%*%R Lmax<-eigen(A)$val[1] dmax<-eigen(A)$vec[,1] dmax<-dmax/sqrt(Lmax) dmax<-abs(dmax) plot(dmax,xlab="indice",ylab="dmax") identify(dmax) #################grafico da variavel adicionada fit<-lm(y~x2) r<-resid(fit) fit1<-lm(x1~x2) v<-resid(fit1) plot(v,r,xlab="residuo v",ylab="residuo r",main="var. adic x1") abline(lm(r~v-1),lty=2) #################grafico da variavel adicionada fit<-lm(y~x1) r<-resid(fit) fit1<-lm(x2~x1) v<-resid(fit1) plot(v,r,xlab="residuo v",ylab="residuo r",main="var. adic x2") abline(lm(r~v-1),lty=2) ###Calculando a variacao (%) quando retiramos o ponto fit<-lm(y~x1+x2) fit1<-lm(y~x1+x2,subset=-c(21)) sa<-100*((coef(fit1)-coef(fit)) /coef(fit) ) sfit<-summary(fit) sfit1<-summary(fit1) sa1<-100*(sfit1$sigma*sqrt(diag(sfit1$cov.unscaled))-sfit$sigma*sqrt(diag(sfit$cov.unscaled)))/(sfit$sigma*sqrt(diag(sfit$cov.unscaled))) round(sa,digits=2) round(sa1,digits=2)