Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
Ambos lados da revisão anteriorRevisão anteriorPróxima revisão | Revisão anterior | ||
dicas:rstudio [2011/04/19 22:07] – paulojus | dicas:rstudio [2011/04/25 10:44] (atual) – walmes | ||
---|---|---|---|
Linha 17: | Linha 17: | ||
* ✔ Outras Aproximações pela normal; | * ✔ Outras Aproximações pela normal; | ||
* Convergência da média de realizações binomial, Poisson, beta, etc, para uma distribuição normal controlando tamanho da amostra; | * Convergência da média de realizações binomial, Poisson, beta, etc, para uma distribuição normal controlando tamanho da amostra; | ||
+ | * ✔ Gráfico para estudo de medidas de influência em modelos de regressão linear (Walmes); | ||
+ | * ✔ Teste de normalidade aplicado aos dados e aos resíduos (Walmes); | ||
+ | * ✔ Teste de correlação para dados e resíduos de experimentos (Walmes); | ||
+ | * ✔ Taxa de erro tipo I e tipo II (Walmes). | ||
Dicas sobre o editor: | Dicas sobre o editor: | ||
Linha 116: | Linha 120: | ||
curve(dnorm(x), | curve(dnorm(x), | ||
legend(" | legend(" | ||
- | c(substitute(t[nu == a], list(a=df)), | + | c(substitute(t[nu == a], list(a=df)), |
+ | | ||
}, | }, | ||
df = slider(1, 40) | df = slider(1, 40) | ||
Linha 124: | Linha 129: | ||
## Chi^2 e normal | ## Chi^2 e normal | ||
## | ## | ||
- | |||
manipulate( | manipulate( | ||
{ | { | ||
- | curve(dchisq(x, | + | curve(dchisq(x, |
- | curve(dnorm(x, | + | |
- | legend(" | + | curve(dnorm(x, |
- | c(substitute(chi^2[nu == a], list(a=df)), | + | |
- | }, | + | legend(" |
+ | leg=eval(substitute(c(expression(chi[nu==df]^2), | ||
+ | expression(N(mu==df, | ||
+ | list(df2=2*df, df=df)), | ||
+ | ), | ||
+ | | ||
+ | }, | ||
df=slider(1, | df=slider(1, | ||
) | ) | ||
Linha 198: | Linha 208: | ||
# | # | ||
</ | </ | ||
+ | |||
+ | ==== Gráfico para estudo de medidas de influência em modelos de regressão linear ==== | ||
+ | |||
+ | <code R> | ||
+ | # por Walmes ------------------------------------------------ | ||
+ | |||
+ | require(manipulate) | ||
+ | data(anscombe) | ||
+ | ans0 <- anscombe[, | ||
+ | ans0 <- ans0[order(ans0$x1), | ||
+ | rownames(ans0) <- NULL | ||
+ | ans1 <- ans0 | ||
+ | rx <- 2*diff(range(ans1$x1)) | ||
+ | ry <- 2*diff(range(ans1$y1)) | ||
+ | cols <- rep(1, | ||
+ | |||
+ | layout(matrix(c(1, | ||
+ | |||
+ | manipulate({ | ||
+ | ans1[po,] <- ans0[po, | ||
+ | plot(ans1) | ||
+ | points(ans1[po, | ||
+ | abline(a=3, b=0.5, col=" | ||
+ | m1 <- lm(y1~x1, data=ans1) | ||
+ | abline(m1, col=2) | ||
+ | h <- hatvalues(m1)[po] | ||
+ | r <- residuals(m1)[po] | ||
+ | legend(" | ||
+ | | ||
+ | substitute(r==re, | ||
+ | legend(" | ||
+ | plot(m1) | ||
+ | }, | ||
+ | po=slider(1, | ||
+ | dx=slider(-rx+0.001, | ||
+ | dy=slider(-ry, | ||
+ | |||
+ | # | ||
+ | </ | ||
+ | |||
+ | ==== Teste de normalidade aplicado aos dados e aos resíduos ==== | ||
+ | |||
+ | <code R> | ||
+ | # por Walmes ------------------------------------------------ | ||
+ | |||
+ | par(mfrow=c(2, | ||
+ | |||
+ | manipulate({ | ||
+ | m <- rep(seq(0, | ||
+ | x <- rnorm(m, m, sd) | ||
+ | xp <- qqnorm(x); qqline(x) | ||
+ | rug(xp$x); rug(xp$y, side=2) | ||
+ | legend(" | ||
+ | m0 <- lm(x~factor(m)) | ||
+ | xp <- qqnorm(residuals(m0)); | ||
+ | rug(xp$x); | ||
+ | legend(" | ||
+ | | ||
+ | }, | ||
+ | h1=slider(0.001, | ||
+ | nlev=slider(2, | ||
+ | nrep=slider(2, | ||
+ | sd=slider(0.01, | ||
+ | | ||
+ | # | ||
+ | </ | ||
+ | |||
+ | ==== Teste de correlação para dados e resíduos de experimentos ==== | ||
+ | |||
+ | <code R> | ||
+ | # por Walmes ------------------------------------------------ | ||
+ | |||
+ | require(MASS) | ||
+ | par(mfrow=c(2, | ||
+ | |||
+ | manipulate({ | ||
+ | m <- rep(seq(0, | ||
+ | x <- mvrnorm(length(m), | ||
+ | | ||
+ | x[,1] <- x[,1]+m; x[,2] <- x[,2]+m | ||
+ | plot(x) | ||
+ | legend(" | ||
+ | m0 <- aov(x~factor(m)) | ||
+ | r <- residuals(m0) | ||
+ | plot(r) | ||
+ | legend(" | ||
+ | }, | ||
+ | h1=slider(0, | ||
+ | nrep=slider(10, | ||
+ | nlev=slider(2, | ||
+ | cor=slider(-0.99, | ||
+ | |||
+ | # | ||
+ | </ | ||
+ | |||
+ | ==== Taxa de erro tipo I e tipo II ==== | ||
+ | |||
+ | <code R> | ||
+ | # por Walmes ------------------------------------------------ | ||
+ | |||
+ | require(manipulate) | ||
+ | |||
+ | n <- 70 | ||
+ | xx <- seq(qnorm(0.9), | ||
+ | yy <- dnorm(xx, 0, 1) | ||
+ | |||
+ | area <- function(x, | ||
+ | da <- rbind(cbind(x, | ||
+ | DA <- sapply(1: | ||
+ | | ||
+ | dir <- da[o, | ||
+ | esp <- da[o, | ||
+ | | ||
+ | } | ||
+ | ) | ||
+ | abs(sum(apply(DA, | ||
+ | } | ||
+ | |||
+ | manipulate({ | ||
+ | curve(dnorm(x, | ||
+ | ylim=c(-0.15, | ||
+ | axis(2, at=seq(0, | ||
+ | curve(dnorm(x, | ||
+ | xx2 <- seq(-4+i, qnorm(0.9, i, 1)+2, l=n) | ||
+ | yy2 <- dnorm(xx2, i, 1) | ||
+ | xx2 <- c(min(xx2), xx2, max(xx2)) | ||
+ | yy2 <- c(0,yy2,0) | ||
+ | yy2 <- pmin(yy2, dnorm(xx2, 0, 1)) | ||
+ | polygon(xx2, | ||
+ | polygon(c(xx, | ||
+ | c(yy, rep(0, length(yy))), | ||
+ | segments(i, 0, i, 0.4, col=2) | ||
+ | segments(0, 0, 0, 0.4, col=1) | ||
+ | tipo2 <- round(area(xx2, | ||
+ | text(2, -0.075, pos=1, label=expression(alpha==0.10)) | ||
+ | arrows(2, -0.075, 2, -0.01, length=0.1) | ||
+ | text(i/2, 0.45, pos=3, label=substitute(beta==b, | ||
+ | arrows(i/2, 0.45, i/2, max(yy2)+0.01, | ||
+ | }, | ||
+ | i=slider(0, 6, step=0.01, initial=0) | ||
+ | ) | ||
+ | |||
+ | # | ||
+ | </ | ||
+ |