[R-br] Levene Test em experimentos fatoriais

Maurício Sangiogo ms_sangiogo em hotmail.com
Sexta Agosto 5 19:07:20 BRT 2016


Pessoal, estou iniciando no R, e me surgiu uma dúvida: no caso de experimentos fatoriais, com dois fatores como devo proceder a análise de homogeneidade das variâncias pelo teste Levene?Desde já agradeço!



..................Mauricio SangiogoTEL:(55) 96822030  Currículo Lattes: http://lattes.cnpq.br/1098128601727996 

> From: r-br-request em listas.c3sl.ufpr.br
> Subject: Digest R-br, volume 68, assunto 5
> To: r-br em listas.c3sl.ufpr.br
> Date: Fri, 5 Aug 2016 12:00:01 -0300
> 
> Enviar submissões para a lista de discussão R-br para 
> 	r-br em listas.c3sl.ufpr.br
> 
> Para se cadastrar ou descadastrar via WWW, visite o endereço
> 	https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> ou, via email, envie uma mensagem com a palavra 'help' no assunto ou
> corpo da mensagem para 
> 	r-br-request em listas.c3sl.ufpr.br
> 
> Você poderá entrar em contato com a pessoa que gerencia a lista pelo
> endereço
> 	r-br-owner em listas.c3sl.ufpr.br
> 
> Quando responder, por favor edite sua linha Assunto assim ela será
> mais específica que "Re: Contents of R-br digest..."
> 
> 
> Tópicos de Hoje:
> 
>    1. Re: plotar batimetrias tracejadas (Éder Comunello)
>    2. [Dúvida] Hessiana pela função optim (Pedro Rafael)
>    3. Re: [Dúvida] Hessiana pela função optim (Wagner Bonat)
> 
> 
> ----------------------------------------------------------------------
> 
> Message: 1
> Date: Thu, 4 Aug 2016 12:58:54 -0400
> From: Éder Comunello <comunello.eder em gmail.com>
> To: Rodrigo Plei <rodrigo.plei em gmail.com>,  a lista Brasileira oficial
> 	de discussão do programa R.  <r-br em listas.c3sl.ufpr.br>
> Subject: Re: [R-br] plotar batimetrias tracejadas
> Message-ID:
> 	<CABmC8g=X4h50BJndGYpsrV58odUJ3R8XoNZZnu1j3cK42zoj0g em mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> Rodrigo,
> 
> Ao importar o shape ele se torna um objeto da classe sp (SpatialLines ou
> SpatialLinesDF). A partir daí vc pode isolar as linhas e definir o padrão
> ao usar plot(). Para tracejado use o argumento lty=2 ou 3.
> 
> # <code r>
> # http://mapas.mma.gov.br/i3geo/datadownload.htm
> fn <- paste0("http://mapas.mma.gov.br/ms_tmp/estadosl_2007", c(".shp",
> ".dbf", ".shx"))
> for (i in fn) download.file(i, basename(i), mode="wb")
> 
> require(maptools)
> est     <- readShapeLines("estadosl_2007")
> est.pol <- readShapePoly("estadosl_2007")
> str(est, max=2)
> est em data
> est em data[c(7,9,12,13),]
> 
> plot(est, lty=2)
> lines(est[c(7,9,12,13),], col=2, add=T)
> # plot(est.pol[c(7,9,12,13),], col=2, add=T)
> # </code>
> 
> 
> 
> ================================================
> Éder Comunello
> Researcher at Brazilian Agricultural Research Corporation (Embrapa)
> DSc in Agricultural Systems Engineering (USP/Esalq)
> MSc in Environ. Sciences (UEM), Agronomist (UEM)
> ---
> Embrapa Agropecuária Oeste, Dourados, MS, Brazil |<O>|
> ================================================
> GEO, -22.2752, -54.8182, 408m
> UTC-04:00 / DST: UTC-03:00
> 
> 
> 
> 
> Em 3 de agosto de 2016 21:05, Rodrigo Plei via R-br <
> r-br em listas.c3sl.ufpr.br> escreveu:
> 
> > Prezados,
> >
> > Tenho um shapefile que contém os dados da linha de costa e de batimetrias
> > (100 a 500 m).
> >
> > Eu uso o pacote "maptools" para plotar o mapa nos limites que eu quero,
> > que obviamente acaba plotando tudo o que está no shapefile em linha
> > contínua.
> >
> > Gostaria de saber:
> >
> > 1 - se há como plotar a linha de costa em traço contínuo e as batimetrias
> > tracejadas
> >
> > 2 - se há como escolher somente uma das batimetrias (digamos, a de 200 m)
> > para ser plotada (tracejada obviamente) no mesmo mapa.
> >
> > ------------------------------------------------------------
> > ------------------------------------------
> > CRM:
> >
> > setwd("C:\\ ...") # diretório onde está o shapefile
> >
> > mapa <- readShapeLines("nome_do_shapefile.shp")
> >
> > plot(mapa, xlim =c(-48, -44), ylim = c(-26.5, - 23), axes = TRUE,
> > cex.axis=1.2)
> > ------------------------------------------------------------
> > ---------------------------------------------
> >
> > Não dá para mandar o shapefile porque é muito grande, mas pelo CRM dá para
> > visualizar o que eu fiz e o que eu gostaria de fazer.
> >
> > Agradeço desde logo,
> >
> > Rodrigo
> >
> >
> > --
> > =8-->=8-->=8-->=8-->=8-->=8-->=8-->=8-->=8-->=8-->=8-->=8-->
> >
> > Prof. Dr. Rodrigo Silvestre Martins
> >
> > Universidade Federal de São Paulo
> > Instituto do Mar
> > Campus Baixada Santista
> > Rua Dr. Carvalho de Mendonça, 144
> > Encruzilhada, 11070100, Santos, SP - Brasil
> > Tel: + 55  13 3229-0365
> >
> > http://www.unifesp.br/campus/san7/
> > <http://www.unifesp.br/campus/san7/graduacao/cursos/bacharelado-interdisciplinar-em-ciencia-e-tecnologia-do-mar>
> >
> > Email: rodrigo.plei em gmail.com ; ocersm em lycos.com; rsmartins em usp.br;
> > rsmartins em unifesp.br
> > CV Lattes: http://lattes.cnpq.br/5350064124902777
> > Google Scholar:  http://scholar.google.com.br/citations?user=zX_EezEAAAAJ&
> > hl=pt-BR
> > Orcid: http://orcid.org/0000-0002-9884-1515
> > Research Gate: https://www.researchgate.net/profile/Rodrigo_Martins6/
> > <https://www.researchgate.net/profile/Rodrigo_Martins6/?ev=hdr_xprf>
> >
> >
> >
> >
> >
> >
> >
> >
> > _______________________________________________
> > R-br mailing list
> > R-br em listas.c3sl.ufpr.br
> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> > código mínimo reproduzível.
> >
> -------------- Próxima Parte ----------
> Um anexo em HTML foi limpo...
> URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160804/1c0b1756/attachment-0001.html>
> 
> ------------------------------
> 
> Message: 2
> Date: Thu, 4 Aug 2016 18:39:32 -0300
> From: Pedro Rafael <pedro.rafael.marinho em gmail.com>
> To: r-br em listas.c3sl.ufpr.br
> Subject: [R-br] [Dúvida] Hessiana pela função optim
> Message-ID:
> 	<CAKwavrkG0RvV+R6dGmVM1LRbw3KAK_bAJ7F4EriAHEXh4V0G8w em mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> Caros,
> 
> sabemos que a matriz Hessiana multiplicada por -1 da função de
> log-verossimilhança nos fornecem a matriz de informação observada que
> converge assintoticamente para a matriz de informação esperada. A diagonal
> principal da matriz inversa da informação esperada nos dá as variâncias os
> estimadores de máxima verossimilhança.
> 
> Um fato importante para o o questionamento que vou fazer é que estou
> fazendo uso da matriz de informação observada de modo a ter ao menos uma
> aproximação da variância dos estimadores de máxima verossimilhança obtidos
> numericamente pelo método BFGS.
> 
> O problema é que estou obtendo em alguns caros que a solve(-diag(hessiana))
> negativa o que não era de se esperar. Vejam se possível o código.
> 
> # PDF
> pdf_ekww <- function(par,x){
>   a = par[1]
>   b = par[2]
>   c = par[3]
>   alpha = par[4]
>   beta = par[5]
>   g = dweibull(x = x, shape = alpha, scale = beta, log = FALSE)
>   G = pweibull(q = x, shape = alpha, scale = beta, lower.tail = TRUE, log.p
> = FALSE)
>   a * b * c * g * G^(a-1) * (1-G^a)^(b-1) * (1-(1-G^a)^b)^(c-1)
> }
> 
> # Quantilica
> sample_ekww <- function(n,par){
>   a = par[1]
>   b = par[2]
>   c = par[3]
>   alpha = par[4]
>   beta = par[5]
>   u = runif(n=n,min=0, max=1)
>   qweibull(p = (1-(1-u^(1/c))^(1/b))^(1/a), shape = alpha, scale = beta,
> lower.tail = TRUE, log.p = FALSE)
> }
> set.seed(1987)
> 
> vector_par_true = c(1,1,1,1,1)
> data = sample_ekww(n = 1000, par = vector_par_true)
> 
> # Função de log-verossimilhança.
> obj_ekww = function(par,x){
>   sum(log(pdf_ekww(par,x)))
> }
> 
> # Maximizando log-verossimilhança.
> result = optim(fn = obj_ekww, par = c(0.5,1.4,1,1,1), method = "BFGS", x =
> data, hessian = TRUE, control=list("fnscale"=-1))
> 
> diag(solve(-result$hessian))
> 
> Observem que o primeiro elemento do vetor logo acima é negativo o que não
> deveria ser verdade. Notem também que houve convergência segundo o critério
> de parada da função optim, em que convergence é igual a zero. O que para
> vocês podem estar provocando esse problema? A função objetivo é complicada
> a ponto de provocar problemas na convergência do algoritmo vindo por sua
> vez acarretar esse tipo de problema?
> 
> Digo isso porque essas novas classes de distribuições de probabilidade por
> apresentar diversos parâmetros produzem log-verossimilhanças muito
> complicadas incluindo problemas de regiões aproximadamente planas bem como
> problemas piores como log-verossimilhanças monótonas.
> 
> Obrigado desde já,
> Pedro Rafael.
> -------------- Próxima Parte ----------
> Um anexo em HTML foi limpo...
> URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160804/f76ae573/attachment-0001.html>
> 
> ------------------------------
> 
> Message: 3
> Date: Fri, 5 Aug 2016 13:39:14 +0100
> From: Wagner Bonat <wbonat em gmail.com>
> To: Pedro Rafael <pedro.rafael.marinho em gmail.com>,  a lista Brasileira
> 	oficial de discussão do programa R.  <r-br em listas.c3sl.ufpr.br>
> Subject: Re: [R-br] [Dúvida] Hessiana pela função optim
> Message-ID:
> 	<CANt=4Mj_ScQyHrorVUCq7aG2ZyD-VZxBe_5Jb3HtmLuuNoSJuQ em mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> Esse problema pode ocorrer por muitos motivos incluindo apenas uma má
> aproximação do hessiano.
> Eu recomendo algumas coisas:
> 1 - Calcule a verossimilhança perfilhada de cada parâmetro. Isso vai de dar
> certeza que o algoritmo convergiu e te mostrar a cara da função. De acordo
> com o comportamento da profile likelihood vc pode tentar alguma
> reparametrização pra melhorar o comportamento do algoritmo numerico. Eu
> usaria o pacote bbmle que vai fazer isso automaticamente pra vc.
> 2 -  Calcule ao menos a primeira derivada da sua log-verossimilhança e use
> no BFGS.
> 3 - Calcule o hessiano numericamente porém separado, vc pode usar por
> exemplo o pacote numDeriv.
> 
> Att
> 
> Em 4 de agosto de 2016 22:39, Pedro Rafael via R-br <
> r-br em listas.c3sl.ufpr.br> escreveu:
> 
> > Caros,
> >
> > sabemos que a matriz Hessiana multiplicada por -1 da função de
> > log-verossimilhança nos fornecem a matriz de informação observada que
> > converge assintoticamente para a matriz de informação esperada. A diagonal
> > principal da matriz inversa da informação esperada nos dá as variâncias os
> > estimadores de máxima verossimilhança.
> >
> > Um fato importante para o o questionamento que vou fazer é que estou
> > fazendo uso da matriz de informação observada de modo a ter ao menos uma
> > aproximação da variância dos estimadores de máxima verossimilhança obtidos
> > numericamente pelo método BFGS.
> >
> > O problema é que estou obtendo em alguns caros que a
> > solve(-diag(hessiana)) negativa o que não era de se esperar. Vejam se
> > possível o código.
> >
> > # PDF
> > pdf_ekww <- function(par,x){
> >   a = par[1]
> >   b = par[2]
> >   c = par[3]
> >   alpha = par[4]
> >   beta = par[5]
> >   g = dweibull(x = x, shape = alpha, scale = beta, log = FALSE)
> >   G = pweibull(q = x, shape = alpha, scale = beta, lower.tail = TRUE,
> > log.p = FALSE)
> >   a * b * c * g * G^(a-1) * (1-G^a)^(b-1) * (1-(1-G^a)^b)^(c-1)
> > }
> >
> > # Quantilica
> > sample_ekww <- function(n,par){
> >   a = par[1]
> >   b = par[2]
> >   c = par[3]
> >   alpha = par[4]
> >   beta = par[5]
> >   u = runif(n=n,min=0, max=1)
> >   qweibull(p = (1-(1-u^(1/c))^(1/b))^(1/a), shape = alpha, scale = beta,
> > lower.tail = TRUE, log.p = FALSE)
> > }
> > set.seed(1987)
> >
> > vector_par_true = c(1,1,1,1,1)
> > data = sample_ekww(n = 1000, par = vector_par_true)
> >
> > # Função de log-verossimilhança.
> > obj_ekww = function(par,x){
> >   sum(log(pdf_ekww(par,x)))
> > }
> >
> > # Maximizando log-verossimilhança.
> > result = optim(fn = obj_ekww, par = c(0.5,1.4,1,1,1), method = "BFGS", x =
> > data, hessian = TRUE, control=list("fnscale"=-1))
> >
> > diag(solve(-result$hessian))
> >
> > Observem que o primeiro elemento do vetor logo acima é negativo o que não
> > deveria ser verdade. Notem também que houve convergência segundo o critério
> > de parada da função optim, em que convergence é igual a zero. O que para
> > vocês podem estar provocando esse problema? A função objetivo é complicada
> > a ponto de provocar problemas na convergência do algoritmo vindo por sua
> > vez acarretar esse tipo de problema?
> >
> > Digo isso porque essas novas classes de distribuições de probabilidade por
> > apresentar diversos parâmetros produzem log-verossimilhanças muito
> > complicadas incluindo problemas de regiões aproximadamente planas bem como
> > problemas piores como log-verossimilhanças monótonas.
> >
> > Obrigado desde já,
> > Pedro Rafael.
> >
> >
> > _______________________________________________
> > R-br mailing list
> > R-br em listas.c3sl.ufpr.br
> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> > código mínimo reproduzível.
> >
> 
> 
> 
> -- 
> Wagner Hugo Bonat
> ----------------------------------------------------------------------------------------------
> Department of Mathematics and Computer Science (IMADA)
> University of Southern Denmark (SDU) and
> Laboratório de Estatística e Geoinformação (LEG)
> Universidade Federal do Paraná (UFPR)
> -------------- Próxima Parte ----------
> Um anexo em HTML foi limpo...
> URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160805/4139cbe0/attachment-0001.html>
> 
> ------------------------------
> 
> Subject: Legenda do Digest
> 
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> 
> 
> ------------------------------
> 
> Fim da Digest R-br, volume 68, assunto 5
> ****************************************
 		 	   		  
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160805/883e7704/attachment.html>


Mais detalhes sobre a lista de discussão R-br