Não foi possível enviar o arquivo. Será algum problema com as permissões?
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
Ambos lados da revisão anterior Revisão anterior Próxima revisão | Revisão anterior Próxima revisão Ambos lados da revisão seguinte | ||
pessoais:eder [2011/06/01 22:31] eder [Codigos] |
pessoais:eder [2011/06/12 17:36] eder [section 5] |
||
---|---|---|---|
Linha 12: | Linha 12: | ||
* Estatística Espacial | * Estatística Espacial | ||
* [[http://www.leg.ufpr.br/doku.php/projetos:gem2|GEM²]] Grupo de estudos em modelos mistos | * [[http://www.leg.ufpr.br/doku.php/projetos:gem2|GEM²]] Grupo de estudos em modelos mistos | ||
+ | ===== Disciplinas 2011/1 ===== | ||
+ | * [[http://www.leg.ufpr.br/doku.php/disciplinas:ce210-2010-02|CE-210: Inferência estatística II]] | ||
+ | * [[http://www.leg.ufpr.br/doku.php/disciplinas:ce718|CE-718: Métodos Computacionalmente Intensivos]] | ||
+ | |||
===== Minicursos ===== | ===== Minicursos ===== | ||
* [[http://www.leg.ufpr.br/ragronomia|Estatística Experimental com Software R]] | * [[http://www.leg.ufpr.br/ragronomia|Estatística Experimental com Software R]] | ||
- | * [[http://www.leg.ufpr.br/doku.php/pessoais:eder:exptempo| Análise de Experimentos de longa duração]] | + | * [[http://www.leg.ufpr.br/doku.php/pessoais:eder:planejamentofito|Planejamento de experimento PG Produção Vegetal UFPR]] |
- | ===== Codigos ===== | + | * [[http://www.leg.ufpr.br/doku.php/pessoais:eder:exptempo| Análise de Experimentos de longa duração]] II Reunião Paranaense Ciência do Solo |
+ | ===== Códigos ===== | ||
<code R> | <code R> | ||
- | ###buf | + | ###-----------------------------------------------------------------### |
- | buf <- function(n){ | + | ### Agulha de buffon |
- | ttt <- NULL | + | buffon <- function(n,l=1,a=1){ |
- | ttt[1] <- 0 | + | if(a<l){cat('Erro: a < l, deve ser a > l\n')} |
- | x <- runif(n) | + | if(a>=l){ |
- | th <- runif(n,0,pi) | + | theta <- runif(n,0,pi) |
- | st <- sin(th) | + | dist <- runif(n,0,a/2) |
- | for ( i in 1:n){ | + | inter <- sum(dist <= l/2*sin(theta)) |
- | if(st[i]>x[i]){ | + | phi_est <- round((n/inter)*(2*l/a),12) |
- | ttt[i+1] <- ttt[i]+1 | + | cat('Número Simulação',n,'phi_estimado',phi_est,'Erro',round(pi-phi_est,12),'\n') |
- | } | + | return(c(n,phi_est)) |
- | else { | + | }} |
- | ttt[i+1] <- ttt[i] | + | |
- | }} | + | n <- seq(10000,1000000,by=20000) |
- | if (ttt[n+1]>0){ | + | res <- matrix(NA,ncol=2,nrow=length(n)) |
- | plot((0:n)[ttt>0],2*(0:n)[ttt>0]/ttt[ttt>0],type='l',xlab='numero simulação',ylab='pi') | + | con <- 1 |
- | } | + | for (i in n){ |
- | else{print('no sucesso')} | + | res[con,] <- buffon(i) |
- | abline(pi,0) | + | con <- con+1 |
- | } | + | } |
- | + | ||
- | buf(100000) | + | |
+ | plot(res,type='l',ylab=expression(pi),xlab='Simulações') | ||
+ | abline(h=pi,col='red') | ||
+ | ###-----------------------------------------------------------------### | ||
### MOnte carlo | ### MOnte carlo | ||
- | ### inversão de p | + | ## Calcula a área via simulação de monte carlo |
- | ################################################################################ | + | ## args: r= raio, s vetor com numero de simulação, plotS plotar a simulação |
- | ### Regressão beta | + | MCcirculo<-function(r,s,plotS=TRUE){ |
- | rm(list=ls()) | + | ns<-area<-s |
- | require(betareg) | + | r<-r |
- | ###----------------------------------------------------------### | + | con <- 1 |
+ | for (j in ns) { | ||
+ | #pontos aleatorios | ||
+ | x<-runif(j, min=-r, max=r) | ||
+ | y<-runif(j, min=-r, max=r) | ||
+ | ponto<-cbind(x,y) | ||
+ | cont <- sum(apply(ponto,1,function(x){sqrt(sum(x^2))})<r) | ||
+ | #plotando Simulação | ||
+ | if(plotS==TRUE){ | ||
+ | plot(x,y,col="red",type="p",asp=1,lwd=1,xlim=c(-r,r),ylim=c(-r,r), main="Simulação Monte Carlo",sub=j) | ||
+ | ang <- seq(0, 2*pi, length = 100) | ||
+ | xx <- r * cos(ang);yy <- r * sin(ang) | ||
+ | polygon(xx, yy,border = "dark blue",lwd=2) | ||
+ | } | ||
+ | #Calculo de Area | ||
+ | area[con]<-(cont/j)*(r^2)*4 | ||
+ | cat(paste(round(area[con],6),j,'\n')) | ||
+ | con <- con+1 | ||
+ | } | ||
+ | plot(ns,area,main="Simulação Monte Carlo",xlab='Número da amostra',ylab='Area') | ||
+ | abline(h=pi*r^2,col='red',lwd=2) | ||
+ | |||
+ | } | ||
+ | MCcirculo(1,seq(5,5000,by=1000),plotS=FALSE) | ||
+ | ###-----------------------------------------------------------------### | ||
+ | ### Inversão de Probabilidade | ||
+ | ### OBJ: gerar x~exp transformando de uma uniforme | ||
+ | NS <- 10000 | ||
+ | lam <- 0.5 | ||
+ | #f(x)=exp(lam) F(x)=1-exp(-lam*x), logo: F^-1(x)= -lam^-1*log(1-x) | ||
+ | Gexp <- function(x,lam){-(log(1-U))/lam} | ||
+ | |||
+ | U <- runif(NS) | ||
+ | X <- Gexp(U,lam) | ||
+ | Y <- rexp(NS,lam) | ||
+ | |||
+ | par(mfrow=c(1,3)) | ||
+ | hist(U,freq=FALSE,main='Uniforme',col='lightblue') | ||
+ | lines(density(U),col='red',lwd=2) | ||
+ | |||
+ | hist(X,freq=FALSE,main='Expoencial via uniforme',col='lightblue') | ||
+ | lines(density(X),col='red',lwd=2) | ||
+ | lines(curve(dexp(x,lam),min(X),max(X),add=TRUE),col='blue',lwd=2) | ||
+ | |||
+ | hist(Y,freq=FALSE,main='Expoencial do R',col='lightblue') | ||
+ | lines(density(Y),col='red',lwd=2) | ||
+ | lines(curve(dexp(x,lam),min(Y),max(Y),add=TRUE),col='blue',lwd=2) | ||
+ | ###-----------------------------------------------------------------### | ||
+ | ### Metodos de integração numerica | ||
+ | #Função | ||
+ | f <- function(x){exp(-x^2)} | ||
+ | a <- -3 | ||
+ | b <- 3 | ||
+ | # integrar de -3,3 | ||
+ | x <- seq(a,b,l=100) | ||
+ | plot(x,f(x),type='l',ylim=c(0,1)) | ||
+ | # Integração nativa do R - Gauss–Kronrod quadrature | ||
+ | integrate(f,a,b) | ||
+ | ###Simpson 1/3 - INtervalos par, igualmente espaçados | ||
+ | n <- 1200 | ||
+ | xi <- seq(a,b,l=n+1) | ||
+ | i <- seq(2,n,by=2) | ||
+ | j <- seq(3,n-1,by=2) | ||
+ | ((b-a)/n/3)*(f(a)+4*sum(f(xi[i]))+2*sum(f(xi[j]))+f(b)) | ||
+ | ###Simpson 3/8 - Intervalos divisiveis por 3 | ||
+ | n <- 1200 | ||
+ | xi <- seq(a,b,l=n+1) | ||
+ | i <- seq(2,n,by=3) | ||
+ | j <- seq(4,n-2,by=3) | ||
+ | ((3*(b-a)/n)/8)*(f(a)+3*sum(f(xi[i])+f(xi[i+1]))+2*sum(f(xi[j]))+f(b)) | ||
+ | ### Quadratura gausiana 3º Ordem | ||
+ | w <- c(0.555555,0.888888,0.555555) | ||
+ | xi <- c(-0.77459667,0,0.77459667) | ||
+ | (b-a)/2*sum(f((b-a)/2*xi+(a+b)/2)*w) | ||
+ | ### Quadratura gausiana 4º Ordem | ||
+ | w <- c(0.3478548,0.6521452,0.6521452,0.3478548) | ||
+ | xi <- c(-0.86113631,-0.33998104,0.33998104,0.86113631) | ||
+ | (b-a)/2*sum(f((b-a)/2*xi+(a+b)/2)*w) | ||
+ | ### Quadratura gausiana 6º Ordem | ||
+ | w <- c(0.1713245,0.3607616,0.4679139,0.4679139,0.3607616,0.1713245) | ||
+ | xi <- c(-0.933246951,-0.66120938,-0.23861919,0.23861919,0.66120938,0.933246951) | ||
+ | (b-a)/2*sum(f((b-a)/2*xi+(a+b)/2)*w) | ||
+ | ###Monte Carlo | ||
+ | n <- 10000 | ||
+ | xi <- runif(n,a,b) | ||
+ | Ls <- max(f(seq(a,b,l=100))) | ||
+ | Li <- 0 | ||
+ | yi <- runif(n,Li,Ls) | ||
+ | sum(f(xi)>=yi)/n*((b-a)*(Ls-Li)) | ||
+ | points(xi,yi) | ||
+ | ###Laplace | ||
+ | #f' <- -2*x*exp(-x^2) | ||
+ | D2f <- function(x){(4*x^2-2)*exp(-x^2)} | ||
+ | D2f(0) | ||
+ | ((2*pi)/((-D2f(0))))^0.5*f(0) | ||
+ | ##Avaliando | ||
+ | x <- seq(a,b,l=100) | ||
+ | plot(x,f(x),type='l',ylim=c(0,2)) | ||
+ | lines(x,((2*pi)/((-D2f(0))))^0.5*f(x),col="red") | ||
+ | ###-----------------------------------------------------------------### | ||
+ | ### Regressão Beta | ||
### pacote oficial | ### pacote oficial | ||
+ | require(betareg) | ||
data("FoodExpenditure", package = "betareg") | data("FoodExpenditure", package = "betareg") | ||
fe_beta <- betareg(I(food/income) ~ income + persons , data = FoodExpenditure) | fe_beta <- betareg(I(food/income) ~ income + persons , data = FoodExpenditure) | ||
summary(fe_beta) | summary(fe_beta) | ||
- | ###----------------------------------------------------------### | + | ###-----------------------------------------------------------------### |
- | ### log vero | + | ### log vero da regressão beta com duas covariaveis, |
- | log.vero <- function(B0,B1,B2,phi,y,x1,x2){ | + | log.vero <- function(par,y,x1,x2){ |
- | mu <- exp((B0 + B1 * x1 + B2 * x2))/(1+exp((B0 + B1 * x1 + B2 * x2)))##logit^-1 | + | mu <- exp((par[1] + par[2] * x1 + par[3] * x2))/(1+exp((par[1] + par[2] * x1 + par[3] * x2)))##logit^-1 |
- | ll <- sum(dbeta(y, mu* phi, (1-mu)*phi,log = TRUE)) | + | ll <- sum(dbeta(y, mu* par[4], (1-mu)*par[4],log = TRUE)) |
return(ll) | return(ll) | ||
} | } | ||
- | ###----------------------------------------------------------### | + | |
- | log.vero(-0.62,-0.12,0.11,35,y=FoodExpenditure$food/FoodExpenditure$income, | + | ###-----------------------------------------------------------------### |
- | x1=FoodExpenditure$income, | + | opt <- optim(c(B0=-0.5,B1=-0.51,B2=0.11,phi=35),log.vero,y=FoodExpenditure$food/FoodExpenditure$income, |
- | x2=FoodExpenditure$persons) | + | |
- | ###----------------------------------------------------------### | + | |
- | ### B0 B1 | + | |
- | par.vals <- expand.grid(B0=seq(0,2,l=100),B1=seq(-1,1,l=100)) | + | |
- | logL <- apply(as.matrix(par.vals),1,log.vero,B2=0.11,phi=35,y=FoodExpenditure$food/FoodExpenditure$income, | + | |
- | x1=FoodExpenditure$income, | + | |
- | x2=FoodExpenditure$persons) | + | |
- | contour(unique(par.vals$B0),unique(par.vals$B1),matrix(logL,ncol=100)) | + | |
- | ###----------------------------------------------------------### | + | |
- | opt <- optim(c(-0.5,-0.12,0.11,35),logvero,y=FoodExpenditure$food/FoodExpenditure$income, | + | |
x1=FoodExpenditure$income, | x1=FoodExpenditure$income, | ||
x2=FoodExpenditure$persons, | x2=FoodExpenditure$persons, | ||
hessian = TRUE, control=(list(fnscale=-1))) | hessian = TRUE, control=(list(fnscale=-1))) | ||
+ | opt | ||
+ | opt$par | ||
+ | sqrt(-diag(solve(opt$hessian))) | ||
+ | summary(fe_beta) | ||
+ | ###-----------------------------------------------------------------### | ||
</code> | </code> | ||
- | [[http://www.ime.usp.br/~sferrari/beta.pdf|Regressão beta]] | ||
- | ===== Planejamento e Análise de experimentos ===== | + | [[http://www.ime.usp.br/~sferrari/beta.pdf|Regressão beta]] |
- | == Material Geral do curso== | + | |
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/CursoRFito.zip| Geral(Dados, Scripts...)]] | ||
- | == Revisão de Estatística Basica == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/RevisaoEstBasica.R| Script]] | ||
- | == Planejamento de Experimentos == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/PlaneAnaExp.pdf| Apresentação]] | ||
- | == Introdução ao R == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/IntroducaoR.R| Script]] | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/Introdu%e7%e3o%20ao%20Software%20R.pdf| Apresentação]] | ||
- | == Delineamento Inteiramente ao Acaso == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/DIC/exemplo%20dic.R|Script]] | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/DIC/exemplo dic.xls|dados]] | ||
- | == Delineamento Blocos ao Acaso == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/DBA/exemplo%20dba.R|Script]] | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/DBA/exemplo dba.xls|dados]] | ||
- | == Esquema Fatorial == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/Fatorial/Fatorial.R|Script]] | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/Fatorial/fatorial2x3.txt|dados]] | ||
- | == Parcelas Sub-divididas == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/SubDividida/Subdividida.R|Script]] | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/SubDividida/subdividida.txt|dados]] | ||
- | == Regressão == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/Regressao/Regre.r|Script]] | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/Regressao/Escoamento.txt|dados]] | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/Regressao.pdf|Apresentação]] | ||
- | == Script geral do curso == | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/Material%20SNW/Script.pdf| pdf]] | ||
- | * [[http://www.leg.ufpr.br/~eder/CursoRFito/Script.R|Script]] | ||
- | |||