Ferramentas do usuário

Ferramentas do site


cursos:planeco:roteiro:11-lmm_rcmdr

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
cursos:planeco:roteiro:11-lmm_rcmdr [2022/04/27 09:51]
adalardo [Escolha dos efeitos aleatórios]
cursos:planeco:roteiro:11-lmm_rcmdr [2024/04/04 16:58] (atual)
Linha 1: Linha 1:
 ====== Modelos Lineares Mistos (LMM) ====== ​ ====== Modelos Lineares Mistos (LMM) ====== ​
-<WRAP center round box 60%> 
- 
-{{https://​d3i71xaburhd42.cloudfront.net/​e00b5c0fea6fb05b1370cc3dc537ed2e821033b7/​5-Figure1-1.png?​200 ​ |}} 
- 
- 
-Esse roteiro é baseado em um material desenvolvido por alunos de nosso programa de PG ((A versão original está disponível neste [[https://​melinaleiteblog.netlify.com/​2017/​09/​19/​introducao-aos-modelos-mistos/​|site]]))[[https://​melinaleite.weebly.com/​|Melina Leite]], [[https://​mariliagaiarsa.weebly.com/​|Marília Gaiarsa]] e [[http://​www.guimaraes.bio.br/​people.html|Lucas Medeiros]] e vem sendo modificado, ao longo dos anos, para adaptá-lo ao curso. Essa é a primeira versão utilizando o Rcmdr. ​ 
- 
-</​WRAP>​ 
  
  
Linha 18: Linha 10:
   * 2. Compreender a estrutura básica de um modelo linear misto.  ​   * 2. Compreender a estrutura básica de um modelo linear misto.  ​
   * 3. Fazer uma análise de modelo misto no **Rcmdr** usando o pacote ''​lme4''​ (Bates et al. 2014)      * 3. Fazer uma análise de modelo misto no **Rcmdr** usando o pacote ''​lme4''​ (Bates et al. 2014)   
-  * 4. Entender o //output// da função ​`lmer`.  ​+  * 4. Entender o //output// da função ​''​lmer''​.  ​
   * 5. Decidir quais efeitos aleatórios e fixos manter no seu modelo final.   * 5. Decidir quais efeitos aleatórios e fixos manter no seu modelo final.
-  * 6. Tirar conclusões a partir da análise ​de um modelo misto por meio de teste de hipótese ou seleção de modelos.  ​+  * 6. Interpretar o resultado ​de um modelo misto selecionado.  ​
  
 </​WRAP>​ </​WRAP>​
Linha 51: Linha 43:
 ===== Modelos Lineares Mistos (LMM) ===== ===== Modelos Lineares Mistos (LMM) =====
  
-Assista ​ao vídeo abaixo ​para um breve introdução sobre os modelos lineares mistos ​e siga acompanhando pelo tutorial e outras videoaulas ao longo do roteiro.+Os modelos Lineares Mistos são uma generalização de modelos lineares que afrouxam uma premissa básica de todos os modelos que vimos até agora: <wrap em>a independência entre as observações</​wrap>​. Essa falta de independência emerge por vários motivos em experimentos e muitas vezes são desejáveis pois controlam fatores de confusão. Entre as principais fontes de onde emergem essas dependências estão: 
 + 
 +  * espacial 
 +  * temporal 
 +  * biológicas 
 + 
 +No primeiro caso, é esperado que objetos que estão mais próximos sejam mais parecidos entre si do que objetos mais longe, pois compartilham muitas condições associadas ​ao mesmo espaço. Dependências temporais emergem principalmente quando medimos um mesmo objetos de estudo em diferentes momentos. As biológicas estão relacionadas ao compartilhamento de caracteres ou funcionalidades entre indivíduos mais relacionados geneticamente,​ por exemplo.  
 + 
 +Essa dependência portanto, cria agrupamentos de observações que compartilham similaridades que não são compartilhadas com observações de outros grupos.  
 + 
 +Em geral, não estamos interessados nas diferenças que existem entre esses grupos, mas precisamos contemplar a falta de independência de alguma forma. Os **Modelos Lineares Mistos** justamente lidam com essas falta de independência desse agrupamentos de observações. ​ Para isso, os **LMM** incorporam uma estrutura aletoria adicional nos modelos lineares ​para acomodar esses agrupamentos definidos agora como **variáveis categóricas preditoras aleatórias**. ​ Diferente das **variáveis categóricas preditoras fixas** onde o interesse é interpretar as diferenças entre os níveis, nas aleatórias queremos apenas estimar a variabilidade associada aos agrupamentos. 
 + 
 +<WRAP center round box 80%> 
 + 
 +==== Variáveis categóricas fixas ou aleatórias ==== 
 + 
 +{{:​cursos:​planeco:​roteiro:​randfixEff.png?​800|}} 
 + 
 +Uma forma de diferenciar as variáveis categóricas fixas e aleatórias é imaginar a realização de múltiplos experimentos,​ que está por trás da teoria da estatística frequentista. Em um experimento usual com a variável categórica fixa estamos interessados na estimativa das médias para cada nível da variável e  buscamos saber se esses níveis são diferentes em média, como exemplificado na primeira realização do experimento (**1**) ​ no painel da esquerda (**a**) da figura acima. Ao refazer o mesmo experimento,​ iriamos recoletar os mesmos níveis (experimentos **2** e **3** ) e estimar valores de médias muito próximos, como exemplificado no painel **a** da figura acima no seu canto direito. Por outro lado, quando temos uma variável categórica aleatória não estamos interessados em nenhum nível específico e outro experimento iria coletar outros níveis aleatórios ((por isso o nome!)) dentro todos os níveis possíveis dessa variável categórica,​ como mostra o painel **b** da figura acima. Neste caso, estamos interessados,​ não na diferença das médias entre os níveis e sim, na variabilidade associada à população de níveis dessa variável categórica,​ como mostrado no canto direito do painel **b**. ​    
 + 
 +</​WRAP>​ 
 + 
 + 
 + 
 +O vídeo abaixo apresenta uma breve introdução sobre os modelos lineares mistos .
  
 <WRAP center round box 80%> <WRAP center round box 80%>
Linha 58: Linha 74:
 </​WRAP>​ </​WRAP>​
  
-Para explicar ​o que são modelos mistos e sua importância em ecologia, usaremos como exemplo um conjunto de dados presente no [[cursos:​planeco:​roteiro:​11-lmm#​referências_e_recomendações|capítulo 5 de Zuur et al. (2009)]]. Esses dados são referentes a um estudo sobre a riqueza de espécies da macrofauna em 9 praias na costa da Holanda. Em cada uma das praias os autores coletaram dados em cinco localidades diferentes. Para cada localidade existe informação sobre a altura da estação de amostragem em relação à altura média da maré (''​NAP'',​ variável contínua) e também um índice de exposição da praia (''​Exposure'',​ variável categórica). ​+===== Crescimento de Árvores ===== 
 + 
 + 
 +Vamos contextualizar os **LMM** a partir de um exemplo e suas diferença com os modelos **LM**.  
 +O interesse do estudo do exemplo a seguir foi entender se a **deciduidade** (perda de folha síncrona) de árvores está relacionada ao crescimento do indivíduo. Algumas árvores perdem as folhas de forma sincronizada (decíduas),​ enquanto outras trocam de folhas ao longo do tempo sem haver essa sincronicidade (perenes). ​  
 + 
 +A pergunta: árvores decíduas crescem menos que árvores não decíduas? Tem seus desafios e fontes de confusão. Um complicador é que o crescimento está diretamente relacionado com o tamanho da árvore. Por isso, os pesquisadores decidiram incluir o tamanho da árvore como uma preditora fixa e com isso  condicionaram o crescimento à variável tamanho. Além disso, a perda de folha síncrona é característica da espécie e eles precisaram incluir essa variável no desenho experimental. 
 +Ao final, os pesquisadores selecionaram ''​5''​ espécies decíduas e outras ''​5''​ perenes e, para cada espécie anotaram o crescimento de ''​10''​ indivíduos,​ totalizando 100 indivíduos.  
 +<WRAP center round box 80%> 
 +**__Deciduidade em Árvores__** 
 + 
 + 
 +{{youtube>​EN2_5l8FXQk ​ |}} 
 + 
 +</​WRAP>​ 
 + 
 + 
 +Vamos iniciar nosso exemplo com uma análise de modelo linear simples, sempre testando a hipótese que o crescimento de árvores decíduas e perenes é diferente. 
 + 
 +<WRAP center round box 80%> 
 +Cresce árvores: modelo linear 
 + 
 +  - baixe os dados do experimento {{ :​cursos:​planeco:​roteiro:​alturaCresc.txt |cresce arvores}};​ 
 +  - faça o modelo ''​cresc ~ alt + dec + alt:dec '';​ 
 +  - simplifique até o mínimo adequado; 
 +  - interprete o modelo selecionado. 
 + 
 +</​WRAP>​ 
 +  
 + 
 +==== Procedimento em duas etapas: cresce árvores ==== 
 + 
 +O problema com o modelo que fizemos acima é que desrespeitamos uma pressuposto muito importante para os modelos lineares: <wrap em> a independência entre as observações </​wrap>​. Os indivíduos de uma mesma espécie podem compartilhar características que poderiam fazer o crescimento de todos os indivíduos desta espécies crescer mais ou menos, independente se a espécie é decídua ou não. Por essa razão precisamos tratar essa dependência entre as observações associada aos indivíduos serem da mesma espécie. Antes de termos a instrumentação dos modelos mistos ou outras técnicas para lidar com essas dependências,​ uma forma de tratar as dependências entre observações era a redução da informação,​ por exemplo a média, para cada nível de agrupamento desta dependência,​ no caso aqui ilustrado, para cada uma das espécies. Como temos o crescimento dependendo do tamanho do indivíduo, a média aqui não seria uma boa redução de informação pois poderíamos ter amostrado indivíduos maiores em um espécie e menores em outra, simplesmente por acaso. ​Para esse caso, o que podemos fazer é a redução da relação ''​cresc ~ alt''​ para cada espécie e em seguida testar se as inclinações das espécies decícuoas são diferentes das espécies perenes. Se as inclinações não forem diferentes, ainda resta testar se os interceptos são diferentes. Vamos fazer esse teste.  
 + 
 +<WRAP center round box 80%> 
 +  - para cada uma das 10 espécies faça o modelo ''​cresc ~ alt'';​ 
 +  - guarde os coeficientes de inclinação e intercepto para cada uma das espécies junto a informação se é decídua ou perene; 
 +  - faça o modelo que testa se a inclinação é  diferente entre decíduas e perenes; 
 +  - caso o a inclinação não seja significativamente diferente entre os dois grupos, faça o mesmo para a intercepto;​ 
 +  - interprete o resultado. 
 +</​WRAP>​ 
 + 
 +  
 + 
 +==== LMM: cresce árvores ==== 
 + 
 +Vamos agora modelar esses dados com o modelo linear mistos. O **misto** vem da ideia de incorporar variáveis fixas e aleatórias como preditoras. Nestes modelos a estrutura aleatória preditora pode influenciar o intercepto ou a inclinação ((a modelagem da inclinação pressupõem o intercepto)).  
 +A influência no intercepto significa que a estimativa de interceptos para as espécies provêm de uma distribuição normal de interceptos definidos por um intercepto médio e um dado desvio padrão. A expressão geral para um modelo com uma preditora e a variável aleatória afetando apenas o intercepto é:   
 + 
 +$$ y_{ij} = (\bar{\alpha} + \epsilon_j) + \beta x_{ij} ​ + \epsilon_{ij} $$ 
 + 
 + 
 + 
 + 
 +$$ \epsilon_j = N(0, \sigma_{entre}) $$ 
 + 
 +$$ \epsilon_{ij} = N(0, \sigma_{intra}) $$ 
 + 
 +O $\bar{\alpha}$ é o intercepto médio e o $\sigma_{entre}$ é a estimativa do desvio padrão associado à distribuição de interceptos para a variável aleatória. Ou seja, no nosso caso, a estimativa da variabilidade de interceptos associado às espécies. ​  
 + 
 +O modelo em que a variável aleatória influencia a inclinação tem a seguinte expressão:  
 + 
 +$$y_{ij} = (\bar{\alpha} + \epsilon_{\alpha_j}) + (\bar{\beta} + \epsilon_{\beta_j}) ​ x_{ij} + \epsilon_{\text{res}_{ij}}$$ 
 + 
 +Note que não ao influenciar a inclinação,​ por consequência o intercepto também é influenciado pela variável aleatória. ​ Neste caso o modelo estima o intercepto médio, a inclinação média e os seguintes desvios padrão: 
 + 
 +$$ \epsilon_{\alpha} = N(0, \sigma_{\alpha}) $$ 
 +$$ \epsilon_{\beta} = N(0, \sigma_{\beta}) $$ 
 +$$ \epsilon_{\text{res}} = N(0, \sigma_{\text{res}}) $$ 
 + 
 + 
 +<WRAP center round tip 80%> 
 + 
 + 
 +=== LMM no Rcmdr === 
 + 
 +Existem vários pacotes disponíveis no R para realizar análises de modelos mistos. Neste roteiro usaremos o ''​lme4''​ (Bates et al. 2014), que possui funções para analisar modelos lineares mistos, modelos lineares mistos generalizados e modelos mistos não lineares.  
 + 
 +Desde o ano de 2020, os modelos mistos passaram a ser contemplados no Rcmdr. Por isso, podemos utilizar essa interface para fazer os modelos. Nas versões recentes do Rcmdr o pacote ''​lme4''​ é carregado por padrão quando se constroi um modelo misto. Caso ele não seja carregado automaticamente,​ é possível carregá-lo. Para isso, vá em ''​Tools -> load packages''​ e escolha ''​lme4''​((Caso queira usar as funções que utilizaremos a seguir no console do ''​R''​ diretamente,​ você precisará instalar e carregar o mesmo pacote)).  
 + 
 + 
 +</​WRAP>​ 
 + 
 + 
 + 
 +Para criar o nosso modelo cheio no R com a variável aleatória influenciando a inclinação,​ a notação é: 
 + 
 +<​code>​ lmer(cresc ~ alt + dec + alt:dec + (alt|sp)) </​code>​ 
 + 
 +A expressão ''​(alt|sp)''​ está indicando que a variável aleatória ''​sp''​ irá modelar a inclinação da variável contínua ''​alt''​. 
 + 
 +O modelo em que a variável ''​sp''​ influência apenas o intercepto é construído com a seguinte expressão:  
 + 
 +<​code>​ lmer(cresc ~ alt + dec + alt:dec + (1|sp)) </​code>​ 
 + 
 +O código ''​(1|sp)''​ indica que a variável ''​sp''​ vai influenciar apenas o intercepto.  
 + 
 +<WRAP center round box 90%> 
 +==== Selecionando a estrutura aleatória do modelo ==== 
 + 
 +Assim como na estrutura fixa do modelo podemos reduzir a estrutura aleatória ao mínimo adequado para interpretar. Para isso, seguimos o procedimento descrito em Zuur et al. 2009 ((veja referência ao final do roteiro)). 
 +  - defina estrutura cheia das variáveis fixas; 
 +  - inicie com a forma mais complexa da estrutura aleatória;​ 
 +  - compare modelos aninhados por simplificando a estrutura aleatória;​ 
 +  - utilize a função ''​anova''​ com o argumento ''​refit = FALSE''​ quando comparar modelos com diferentes estruturas aleatórias;​ 
 +  - finalize a simplificação da estrutura aleatória ((a equipe da disciplina acredita que ao menos a influência no intercepto deve ser mantida para contemplar a dependência do desenho experimental)),​ 
 +  - faça a simplificação da estrutura fixa do modelo como em um modelo ''​lm'',​ mantendo a estrutura aleatória da forma que foi selecionada nos passos acima.  
 + 
 +<WRAP center round todo 80%> 
 +==== Atividade ==== 
 + 
 +  * baixe o arquivo de {{ :​cursos:​planeco:​roteiro:​crescArv.txt |dados de crescimento de árvores}} ((apresenta campos separados por tabulação));​ 
 +  * leia o arquivo de dados no Rcmdr; 
 +  * construa o modelo cheio; 
 +  * faça a simplificação do modelo seguindo os passos indicados acima; 
 +  * interprete o modelo selecionado. 
 + 
 +</​WRAP>​ 
 + 
 +</​WRAP>​ 
 + 
 + 
 +<WRAP center round help 90%> 
 + 
 +**PARA ENTREGAR ANTES DA PRÓXIMA AULA** 
 +Acesse o [[https://​forms.gle/​Uh7QZvrKmcFFNkHX6|formulário]] e responda às questões propostas referentes aos dados sobre crescimento de árvores.  
 + 
 + 
 +</​WRAP>​ 
 + 
 + 
 + 
 + 
 + 
 +===== Riqueza em praias ===== 
 + 
 +<WRAP center round box 60%> 
 + 
 +{{https://​d3i71xaburhd42.cloudfront.net/​e00b5c0fea6fb05b1370cc3dc537ed2e821033b7/​5-Figure1-1.png?​200 ​ |}} 
 + 
 + 
 +Esse exemplo no roteiro é baseado em material desenvolvido por alunos de nosso programa de PG ((A versão original está disponível neste [[https://​melinaleiteblog.netlify.com/​2017/​09/​19/​introducao-aos-modelos-mistos/​|site]]))[[https://​melinaleite.weebly.com/​|Melina Leite]], [[https://​mariliagaiarsa.weebly.com/​|Marília Gaiarsa]] e [[http://​www.guimaraes.bio.br/​people.html|Lucas Medeiros]] e vem sendo modificado, ao longo dos anos, para adaptá-lo ao curso.  
 + 
 +</​WRAP>​ 
 + 
 + 
 +Para exemplificar ​o que são modelos mistos e sua importância em ecologia, usaremos como exemplo um conjunto de dados presente no [[cursos:​planeco:​roteiro:​11-lmm#​referências_e_recomendações|capítulo 5 de Zuur et al. (2009)]]. Esses dados são referentes a um estudo sobre a riqueza de espécies da macrofauna em 9 praias na costa da Holanda. Em cada uma das praias os autores coletaram dados em cinco localidades diferentes. Para cada localidade existe informação sobre a altura da estação de amostragem em relação à altura média da maré (''​NAP'',​ variável contínua) e também um índice de exposição da praia (''​Exposure'',​ variável categórica). ​
  
 Vamos supor que estamos interessados em verificar se a altura em relação à altura média da maré (variável ''​NAP''​) influencia a riqueza de espécies nessas praias, deixando de lado a variável de exposição nesse momento. Podemos, por exemplo, construir um **modelo linear simples** da seguinte forma: Vamos supor que estamos interessados em verificar se a altura em relação à altura média da maré (variável ''​NAP''​) influencia a riqueza de espécies nessas praias, deixando de lado a variável de exposição nesse momento. Podemos, por exemplo, construir um **modelo linear simples** da seguinte forma:
Linha 82: Linha 244:
 Nesta figura temos as retas do modelo linear simples entre ''​Riqueza''​ e ''​NAP''​ aplicado para cada praia . Entretanto, a pergunta do estudo não diz respeito a cada praia separadamente,​ o objetivo é modelar a relação para todas as praias amostradas, sem especificar o que acontece para cada praia isoladamente. Por outro lado, se considerarmos cada ponto de amostragem como se fossem independente entre si, estaremos incorrendo em um erro denominado de pseudo-replicação ou falta de independência das observações((podemos dizer também que as observações da mesma praia são correlacionadas)). Ou seja, queremos considerar essa dependência sem falar especificamente de nenhuma praia e, ao mesmo tempo, avaliar a variação associada às praias. Além disso, queremos que as praias amostradas representem uma amostra aleatória de todas as praias que poderíamos ​ contemplar no nosso estudo. Nesta figura temos as retas do modelo linear simples entre ''​Riqueza''​ e ''​NAP''​ aplicado para cada praia . Entretanto, a pergunta do estudo não diz respeito a cada praia separadamente,​ o objetivo é modelar a relação para todas as praias amostradas, sem especificar o que acontece para cada praia isoladamente. Por outro lado, se considerarmos cada ponto de amostragem como se fossem independente entre si, estaremos incorrendo em um erro denominado de pseudo-replicação ou falta de independência das observações((podemos dizer também que as observações da mesma praia são correlacionadas)). Ou seja, queremos considerar essa dependência sem falar especificamente de nenhuma praia e, ao mesmo tempo, avaliar a variação associada às praias. Além disso, queremos que as praias amostradas representem uma amostra aleatória de todas as praias que poderíamos ​ contemplar no nosso estudo.
  
-==== Efeito Aleatório ====+==== Efeito Aleatório: riqueza em praias ​====
  
 Para isso, precisamos de um modelo linear que incorpore o fato de que nossos dados estão agrupados em praias. Chamamos de **efeito aleatório** uma variável que agrupa nossos dados e que, geralmente, seu efeito sobre a variável resposta não nos interessa diretamente ((nesse exemplo não interessa, mas dependendo da análise, pode interessar - veja discussão em McGill 2015)). Nesse exemplo, os autores amostraram ''​9''​ praias, mas poderiam ter feito o mesmo estudo amostrando outras ''​9''​ praias em uma amostra aleatória. Nesse sentido, as ''​9''​ praias da amostra são apenas ''​9''​ possíveis praias amostradas aleatoriamente de todas as possíveis ''​9''​ que poderiam ter sido amostradas ao acaso. Por esta razão, ''​praias''​ é um variável aleatória. Para isso, precisamos de um modelo linear que incorpore o fato de que nossos dados estão agrupados em praias. Chamamos de **efeito aleatório** uma variável que agrupa nossos dados e que, geralmente, seu efeito sobre a variável resposta não nos interessa diretamente ((nesse exemplo não interessa, mas dependendo da análise, pode interessar - veja discussão em McGill 2015)). Nesse exemplo, os autores amostraram ''​9''​ praias, mas poderiam ter feito o mesmo estudo amostrando outras ''​9''​ praias em uma amostra aleatória. Nesse sentido, as ''​9''​ praias da amostra são apenas ''​9''​ possíveis praias amostradas aleatoriamente de todas as possíveis ''​9''​ que poderiam ter sido amostradas ao acaso. Por esta razão, ''​praias''​ é um variável aleatória.
Linha 106: Linha 268:
 Ambos, $\epsilon_{\text{praia}}$ e $\epsilon_{\text{res}}$,​ são variáveis aleatórias com média ''​zero''​ e desvios padrão $\sigma_{\text{praia}}$ e  $\sigma_{\text{res}}$,​ respectivamente. ​ Ambos, $\epsilon_{\text{praia}}$ e $\epsilon_{\text{res}}$,​ são variáveis aleatórias com média ''​zero''​ e desvios padrão $\sigma_{\text{praia}}$ e  $\sigma_{\text{res}}$,​ respectivamente. ​
    
-=====  ​Modelos mistos no Rcmdr =====+====  ​LMM: riqueza em praias ​=====
- +
-Existem vários pacotes disponíveis no R para realizar análises de modelos mistos. Neste roteiro usaremos o ''​lme4''​ (Bates et al. 2014), que possui funções para analisar modelos lineares mistos, modelos lineares mistos generalizados e modelos mistos não lineares.  +
- +
-Desde o ano de 2020, os modelos mistos passaram a ser contemplados no Rcmdr. Por isso, podemos utilizar essa interface para fazer os modelos nesse curso. Porém, lembre-se que estamos utilizando o pacote ''​lme4''​ para a construção destes modelos. Então, precisamos carregá-lo quando o **Rcmdr** é aberto. Para isso, vá em ''​Tools -> load packages''​ e escolha ''​lme4''​((Caso queira usar as funções que utilizaremos a seguir no console do ''​R''​ diretamente,​ você precisará instalar e carregar o mesmo pacote)). ​+
  
  
Linha 166: Linha 324:
 */ */
  
-==== Um modelo plausível ====+==== Um modelo plausível: riqueza em praias ​====
  
 Vamos construir um modelo simmples que tem apenas ''​NAP''​ como variável fixa preditora e a variável ''​Beach''​ como aleatória apenas no intercepto. ​ Esse modelo pode ser descrito no ''​lme4''​ da seguinte forma((pacotes podem ter diferentes sintaxes para descrever modelos mistos)): Vamos construir um modelo simmples que tem apenas ''​NAP''​ como variável fixa preditora e a variável ''​Beach''​ como aleatória apenas no intercepto. ​ Esse modelo pode ser descrito no ''​lme4''​ da seguinte forma((pacotes podem ter diferentes sintaxes para descrever modelos mistos)):
Linha 192: Linha 350:
 Em seguida, vamos dar uma olhada no resultado deste modelo que aparece na janela inferior do Rcmdr. Em seguida, vamos dar uma olhada no resultado deste modelo que aparece na janela inferior do Rcmdr.
  
-==== Interpretando o modelo ====+==== Interpretando o modelo: riqueza em praias ​====
  
 Na figura abaixo temos o resultado resumido do modelo ''​lmm.riq'':​ Na figura abaixo temos o resultado resumido do modelo ''​lmm.riq'':​
Linha 219: Linha 377:
 */ */
  
-==== Predito pelo Modelo ====+==== Predito pelo Modelo: riqueza em praias ​====
  
 Uma boa maneira de interpretar os resultados é a partir do gráfico do predito pelo modelo, se possível junto aos valores das observações dos dados. Temos apresentado gráficos com a experança do modelo ao longo de todo o curso na intenção de auxiliar na interpretação do modelo. Além disso, calcular o predito através dos coeficientes do modelo ajuda a entender a estrutura atrás dos coeficientes. Uma boa maneira de interpretar os resultados é a partir do gráfico do predito pelo modelo, se possível junto aos valores das observações dos dados. Temos apresentado gráficos com a experança do modelo ao longo de todo o curso na intenção de auxiliar na interpretação do modelo. Além disso, calcular o predito através dos coeficientes do modelo ajuda a entender a estrutura atrás dos coeficientes.
Linha 231: Linha 389:
 fixLMM fixLMM
  
-#criando objeto com os coeficientes do modelo (efeitos ​fixos)+#criando objeto com os coeficientes do modelo (efeitos ​aleatorios)
  
 randLMM <- ranef(lmm.riq)$Beach randLMM <- ranef(lmm.riq)$Beach
Linha 253: Linha 411:
 </​WRAP>​ </​WRAP>​
  
-==== Gráfico do Modelo ====+==== Gráfico do Modelo: riqueza em praias ​====
  
  
Linha 390: Linha 548:
  
  
-===== Inferência e diagnóstico do modelo ​=====+==== Inferência e diagnóstico do modelo: riqueza em praias ​====
  
 Nesta parte, depois de já escolhermos a estrutura aleatória do nosso modelo, podemos averiguar qual a real influência dos efeitos fixos sobre a riqueza de espécies, utilizando o procedimento que temos adotado nessa disciplina, ou seja o **teste de hipóteses por meio da comparação de modelos pela tabela de ANOVA**. Depois de selecionarmos o modelo mínimo adequado, que melhor se ajusta aos dados, vamos fazer o diagnóstico dos resíduos deste modelo para ver se ele atende às premissas de um modelo linear misto. Nesta parte, depois de já escolhermos a estrutura aleatória do nosso modelo, podemos averiguar qual a real influência dos efeitos fixos sobre a riqueza de espécies, utilizando o procedimento que temos adotado nessa disciplina, ou seja o **teste de hipóteses por meio da comparação de modelos pela tabela de ANOVA**. Depois de selecionarmos o modelo mínimo adequado, que melhor se ajusta aos dados, vamos fazer o diagnóstico dos resíduos deste modelo para ver se ele atende às premissas de um modelo linear misto.
  
  
-==== Teste de hipótese ​====+==== Seleção ​de modelo: riqueza em praias ​====
  
 O procedimento para verificar se termos do modelo são ou não significativos é a construção de modelos aninhados (ou seja, retirando um parâmetro do modelo com mais parâmetros) e a comparação por uma tabela de ''​anova''​. ​ O procedimento para verificar se termos do modelo são ou não significativos é a construção de modelos aninhados (ou seja, retirando um parâmetro do modelo com mais parâmetros) e a comparação por uma tabela de ''​anova''​. ​
Linha 458: Linha 616:
  
  
-===== Seleção de Modelo Mistos =====+==== Seleção de LMM: riqueza em praias ​====
  
 Uma questão central em planejamento e análise de dados é decidir como compor um conjunto de modelos plausíveis a partir das hipóteses e um conjunto de variáveis. Além disso, a partir deste conjunto de modelos plausíveis,​ é preciso tomar a decisão sobre qual((ou quais)) é o melhor para representar nossos dados. Nesse curso utilizamos a partição da variação para comparar modelos aninhados. Vamos continuar a usar o mesmo procedimento,​ ou seja, fazer o teste de hipótese para comparar modelos dois a dois a partir do modelo cheio para chegar ao mínimo adequado. Esse procedimento se torna mais complexo nos modelos mistos ao envolver a simplificação da estrutura aleatória, além da estrutura fixa, como fizemos nos modelos anteriores.  ​ Uma questão central em planejamento e análise de dados é decidir como compor um conjunto de modelos plausíveis a partir das hipóteses e um conjunto de variáveis. Além disso, a partir deste conjunto de modelos plausíveis,​ é preciso tomar a decisão sobre qual((ou quais)) é o melhor para representar nossos dados. Nesse curso utilizamos a partição da variação para comparar modelos aninhados. Vamos continuar a usar o mesmo procedimento,​ ou seja, fazer o teste de hipótese para comparar modelos dois a dois a partir do modelo cheio para chegar ao mínimo adequado. Esse procedimento se torna mais complexo nos modelos mistos ao envolver a simplificação da estrutura aleatória, além da estrutura fixa, como fizemos nos modelos anteriores.  ​
Linha 467: Linha 625:
  
  
 +<WRAP center round todo 80%>
  
-=== Ajustando os dados ===+=== Ajustando os dados:  riqueza em praias ​===
  
  
- +Os dados que estamos usando estão disponíveis no [[https://​github.com/​jmadin/​zuur/​blob/​master/​data/​RIKZ.txt|github ​do livro do Zuur et al. (2009)]]. A variável ''​Exposure''​ originalmente tem ''​3''​ níveis: ''​8'',​ ''​10''​ e ''​11''​. Como o nível ''​8''​ foi observado apenas em uma praia, reclassificamos esta praia para o nível seguinte, no caso o ''​10''​ (Zuur et al. 2009).  ​
-Os dados que estamos usando estão disponíveis no site do livro do Zuur et al. (2009). A variável ''​Exposure''​ originalmente tem ''​3''​ níveis: ''​8'',​ ''​10''​ e ''​11''​. Como o nível ''​8''​ foi observado apenas em uma praia, reclassificamos esta praia para o nível seguinte, no caso o ''​10''​ (Zuur et al. 2009).  ​+
  
  
Linha 485: Linha 643:
  
  
 +
 +</​WRAP>​
  
  
-===== Escolha ​dos efeitos aleatórios ​=====+==== Seleção ​dos efeitos aleatórios: riqueza em praias ​====
  
 Existem modelos e, portanto, perguntas e delineamentos amostrais que requerem apenas um efeito aleatório para indicar o agrupamento dos dados. Entretanto, como colocado na seção anterior, há também modelos que podem incluir mais de um efeito aleatório. Esse é o caso da interação entre ''​praia''​ e ''​NAP''​ mencionada acima. ​ Existem modelos e, portanto, perguntas e delineamentos amostrais que requerem apenas um efeito aleatório para indicar o agrupamento dos dados. Entretanto, como colocado na seção anterior, há também modelos que podem incluir mais de um efeito aleatório. Esse é o caso da interação entre ''​praia''​ e ''​NAP''​ mencionada acima. ​
Linha 524: Linha 684:
  
  
-A sequência do procedimento para o nosso exemplo, seria:+A sequência do procedimento ​de simplificação da estrutura aleatória ​para o nosso exemplo, seria:
  
  
Linha 539: Linha 699:
 </​code>​ </​code>​
  
-  * Compare os modelos anteriores com o comando ''​anova'' ​como temos feito para fazer a seleção dos modelos aninhados, ​buscando ​sempre ​a simplificação do modelo ao mínimo adequado, usando o menu do Rcmdr ''​Models > Hipothesis tests > Compare two models...''​ e selecionando os modelos ''​lmmint''​ e ''​lmmfull''​. ​+  * Compare os modelos anteriores com o comando ''​anova''​ buscando a simplificação do modelo ao mínimo adequado((note que estes modelos são aninhados, a estrutura aleatória no inclinação ''​NAP''​ incorpora o intercepto também, apesar de não estar explicito na nossa formulação)), usando o menu do Rcmdr ''​Models > Hipothesis tests > Compare two models...''​ e selecionando os modelos ''​lmmint''​ e ''​lmmfull''​. ​
  
 <WRAP center round important 90%> <WRAP center round important 90%>
Linha 566: Linha 726:
 Note que as estimativas do primeiro resultado (ou seja, da anova com reajuste para ML) e do segundo resultado (ou seja, sem reajuste para ML, usando ''​refit = FALSE''​) são diferentes. É importante saber que **no processo de simplificação da __estrutura aleatória__ do modelo** devemos ignorar os primeiros resultados, pois __não queremos que seja feito um reajuste para ML__, ou seja, **queremos que a comparação das estruturas aleatórias seja feita usando as estimativas por REML**. ​ Note que as estimativas do primeiro resultado (ou seja, da anova com reajuste para ML) e do segundo resultado (ou seja, sem reajuste para ML, usando ''​refit = FALSE''​) são diferentes. É importante saber que **no processo de simplificação da __estrutura aleatória__ do modelo** devemos ignorar os primeiros resultados, pois __não queremos que seja feito um reajuste para ML__, ou seja, **queremos que a comparação das estruturas aleatórias seja feita usando as estimativas por REML**. ​
  
-O "​p-valor"​ observado nessa comparação é alto, indicando que os modelos não apresentam diferenças marcantes, sendo assim, devemos reter o modelo mais simples e seguimos simplificando. Como só há mais um termo na estrutura ​randômica ​modelando o intercepto, podemos finalizar a seleção da estrutura aleatória aqui. +O "​p-valor"​ observado nessa comparação é alto, indicando que os modelos não apresentam diferenças marcantes, sendo assim, devemos reter o modelo mais simples e seguimos simplificando. Como só há mais um termo na estrutura ​aleatória ​modelando o intercepto, podemos finalizar a seleção da estrutura aleatória aqui. 
  
 <WRAP center round info 80%> <WRAP center round info 80%>
  
-Alguns autores ((inclusive o próprio Zuur do capítulo que indicamos nesse tutorial como leitura)) advogam que se nenhum termo da estrutura ​randômica ​for significativo,​ deve-se abandonar o modelo misto e partir para o modelo linear sem estrutura aleatória. De fato, isso facilitaria muito a interpretação e a apresentação dos resultados do modelo. Porém, outros autores que seguiremos aqui, indicam que devemos manter a coerência do delineamento experimental/​amostral e portanto devemos contemplar a dependência das observações de uma mesma praia, utilizando o modelo com a variável ​randômica ​''​praia''​ no intercepto. ​  +Alguns autores ((inclusive o próprio Zuur do capítulo que indicamos nesse tutorial como leitura)) advogam que se nenhum termo da estrutura ​aleatória ​for significativo,​ deve-se abandonar o modelo misto e partir para o modelo linear sem estrutura aleatória. De fato, isso facilitaria muito a interpretação e a apresentação dos resultados do modelo. Porém, outros autores que seguiremos aqui, indicam que devemos manter a coerência do delineamento experimental/​amostral e portanto devemos contemplar a dependência das observações de uma mesma praia, utilizando o modelo com a variável ​aleatória  ​''​Beach''​ no intercepto. ​  
 </​WRAP>​ </​WRAP>​
  
Linha 585: Linha 745:
 */ */
  
-Após simplificar a estrutura de efeito aleatório o resultado é que as praias diferem na riqueza média, mas essa variação das praias não está relacionada ​com o ''​NAP''​.  ​+Após simplificar a estrutura de efeito aleatório o resultado é que as praias diferem na riqueza média, mas essa variação das praias não influencia a relação de ''​Richness'' ​com o ''​NAP''​.  ​
  
 Note que quando observamos o primeiro gráfico desse tutorial, parecia que a inclusão de diferentes inclinações para cada praia no modelo seria importante. Porém, o resultado desse teste acima nos indica que, apesar de algumas praias terem inclinações aparentemente diferentes, não ganhamos muita informação adicional relevante ao incluir inclinações diferentes para todas as nove praias. Note que quando observamos o primeiro gráfico desse tutorial, parecia que a inclusão de diferentes inclinações para cada praia no modelo seria importante. Porém, o resultado desse teste acima nos indica que, apesar de algumas praias terem inclinações aparentemente diferentes, não ganhamos muita informação adicional relevante ao incluir inclinações diferentes para todas as nove praias.
  
-===== Estrutura fixa do modelo ​=====+==== Estrutura fixa do modelo: riqueza de praias ​====
  
  
Linha 604: Linha 764:
 </​code>​ </​code>​
  
-Caso esse modelo mais simples ​seja significativopodemos ​continuar a simplificação com os modelos só com ''​NAP''​ ou só com ''​fExposure''​, comparando ​com o que contém ambos termos ''​fExposure + NAP''​. ​+Caso modelo mais simples ​tenha um poder de explicação da variação dos dados similar ao mais complexodevemos ​continuar a simplificação com os modelos só com ''​NAP''​ ou só com ''​fExposure''​. Nos dois casos iremos comparar ​com o modelo ​que contém ambos termos ''​fExposure + NAP''​,  para que os modelos comparados sejam aninhados ((não é possível comparar o modelo só com ''​NAP''​ com o modelo só com ''​fExposure''​!))
  
 Siga a simplificação até chegar ao modelo mínimo adequado para esse conjunto de dados. ​ Siga a simplificação até chegar ao modelo mínimo adequado para esse conjunto de dados. ​
Linha 646: Linha 806:
  
 <WRAP center round alert 90%> <WRAP center round alert 90%>
-**OPS!** Olhando o gráfico diagnóstico dos resíduos, parece que os dados não são tão homocedásticos como deveriam, pois vemos algo parecido com um funil se abrindo da esquerda para a direita, o que indica que o modelo viola esta premissa. Isso não deveria ser uma surpresa já que a variável ''​Richness''​ é uma contagem e como tal tem a variância acoplada à média.+**OPS!** Olhando o gráfico diagnóstico dos resíduos, parece que os dados não são tão homocedásticos como deveriam, pois vemos algo parecido com um funil se abrindo da esquerda para a direita, o que indica que o modelo viola esta premissa. Isso não deveria ser um 
 +=== Ajustando os dados === 
 + 
 + 
 +Os dados que estamos usando estão disponíveis no [[https://​github.com/​jmadin/​zuur/​blob/​master/​data/​RIKZ.txt|github do livro do Zuur et al. (2009)]]. A variável ''​Exposure''​ originalmente tem ''​3''​ níveis: ''​8'',​ ''​10''​ e ''​11''​. Como o nível ''​8''​ foi observado apenas em uma praia, reclassificamos esta praia para o nível seguinte, no caso o ''​10''​ (Zuur et al. 2009). ​  
 + 
 + 
 +A partir da variável ''​Exposure'',​ criamos a ''​fExp''​ que contempla apenas os valores **10** e **11** para designar os dois níveis de exposição das praias. Para tornar essa variável mais explicita com relação ao seu significado vamos transformar os valores **10** e **11** de ''​fExp''​ em fatores **low** e **high**, nesta ordem, criando uma nova variável ''​fExposure'':​ 
 + 
 +  * abra o menu ''​Data''​ > ''​Manage variables in active data set''​ > ''​Convert numeric variables to factors...'';​ 
 +  * coloque o nome da nova variável como ''​fExposure''​ no campo ''<​same as variable>'';​ 
 +  * deixe selecionada a opção ''​Supply level names'';​ 
 +  * no quadro que irá se abrir digite ''​low''​ para o valor ''​10''​ e ''​high''​ para o valor ''​11'';​ 
 +  * após criar verifique se a variável foi corretamente criada clicando no botão ''​View data set''​. 
 + 
 + 
 + 
 +surpresa já que a variável ''​Richness''​ é uma contagem e como tal tem a variância acoplada à média.
  
 **E agora??!** Bem, quase sempre existe um caminho! O problema aqui é que assumimos que a riqueza de espécies, uma variável de contagem, poderia ser modelada como uma distribuição normal. Entretanto, dados de contagem geralmente são melhor modelados usando a distribuição de ''​Poisson''​. Já aprendemos isso no tutorial [[cursos:​planeco:​roteiro:​10-glmpoisson]].  ​ **E agora??!** Bem, quase sempre existe um caminho! O problema aqui é que assumimos que a riqueza de espécies, uma variável de contagem, poderia ser modelada como uma distribuição normal. Entretanto, dados de contagem geralmente são melhor modelados usando a distribuição de ''​Poisson''​. Já aprendemos isso no tutorial [[cursos:​planeco:​roteiro:​10-glmpoisson]].  ​
Linha 682: Linha 859:
  
 **PARA ENTREGAR ANTES DA PRÓXIMA AULA** **PARA ENTREGAR ANTES DA PRÓXIMA AULA**
-Acesse o [[https://​forms.gle/​WBDh238JvtpmuvV9A|formulário]] e responda às questões propostas referentes aos dados sobre a riqueza em praias. ​ +Acesse o [[https://​forms.gle/​AEk1zdTyYzXu2MnV7|formulário]] e responda às questões propostas referentes aos dados sobre a riqueza em praias. ​
- +
- +
-{{url>​https://​forms.gle/​WBDh238JvtpmuvV9A}}+
  
  
 </​WRAP>​ </​WRAP>​
- 
- 
-===== Modelos Mistos Exemplos ===== 
- 
-Vamos treinar um pouco os modelos mistos olhando outros exemplos, buscando sempre entender o conceito de variáveis fixas e aleatórias e treinando a interpretação ​ do resultado dos modelos 
- 
-==== Crescimento de Árvores ==== 
- 
-O interesse deste estudo foi entender se a **deciduidade** (perda de folha síncrona) de árvores está relacionada ao crescimento do indivíduo. Os pesquisadores não estavam interessados se espécies distintas tem crescimentos diferentes, entretanto a perda de folha síncrona é característica da espécie e eles precisaram incluir essa variavel no desenho experimental. 
-No estudo em questão amostraram ''​5''​ espécies decíduas e outras ''​5''​ perenes (não perdem as folhas no mesmo período do ano) e, para cada espécie, anotaram o crescimento de '''​10''​ árvores. ​ Como indivíduos de uma mesma espécie são mais parecidos entre sí do que indivíduos de outras espécies, essa observações não são independentes e precisam ser contempladas no modelo. Um outro complicador é que árvores de diferentes tamanhos ou idades tem crescimentos diferentes. Por isso inclui-se no estudo o tamanho da árvore como uma preditora fixa e com isso os pesquisadores condicionaram o crescimento a variável tamanho. ​   ​ 
- 
-<WRAP center round box 80%> 
-**__Deciduidade em Árvores__** 
- 
- 
-{{ youtube>​EN2_5l8FXQk |}} 
- 
-</​WRAP>​ 
- 
  
  
Linha 713: Linha 868:
 ===== Cultivando aveia ===== ===== Cultivando aveia =====
  
-Nesse experimento clássico descrito por Yates em 1935, foram utilizadas três variedades de aveia tratadas com 4 níveis de adubação com nitrogênio. O desenho experimental deste estudo((''​split-plot''​)) é bastante complexo e contempla diferentes níveis de dependência das observações que precisam ser contempladas ​no modelo como variáveis aleatórias. ​ Vamos entender esse estudo.+Nesse experimento clássico descrito por Yates em 1935, foram utilizadas três variedades de aveia tratadas com 4 níveis de adubação com nitrogênio. O desenho experimental deste estudo((''​split-plot''​)) é bastante complexo e contempla diferentes níveis de dependência das observações que precisam ser incorporadas ​no modelo como variáveis aleatórias. ​ Vamos entender esse estudo.
  
 O primeiro passo é fazer a leitura dos dados do objeto ''​oats''​ que se encontra no pacote ''​MASS'':​ O primeiro passo é fazer a leitura dos dados do objeto ''​oats''​ que se encontra no pacote ''​MASS'':​
Linha 739: Linha 894:
  
    
-Para entender os dados utilize o menu ''​Help''​ > ''​Help on active data set (if available)''​. Leia da documentação que irá se abrir onde  há uma descrição ​dos dados:+Para entender os dados utilize o menu ''​Help''​ > ''​Help on active data set (if available)'' ​e leia a documentação que irá se abrir onde  há uma descrição ​das variáveis:
  
 <WRAP center round box 80%> <WRAP center round box 80%>
Linha 776: Linha 931:
 ==== Atividade ==== ==== Atividade ====
  
-  * Construa um modelo cheio tendo como variável resposta o rendimento de cultivo (''​Y''​) e como preditoras as variáveis fixas variedade (''​V''​),​ adubação nitrogenada (''​N''​) e a interação entre as duas. Como estrutura aleatória utilize o fator aleatório plot (''​P''​) aninhado dentro de bloco (''​B''​)((a sintaxe ​aqui é ''​(1|B/​P)''​)). Note que como não temos variáveis fixas contínuas, apenas categóricas,​ não precisamos ​modelar a inclinação do modelo, apenas o intercepto.+  * Construa um modelo cheio tendo como variável resposta o rendimento de cultivo (''​ Y ''​) e como preditoras as variáveis fixas variedade (''​ V ''​),​ adubação nitrogenada (''​ N ''​) e a interação entre as duas. Como estrutura aleatória utilize o fator aleatório plot (''​ P ''​) aninhado dentro de bloco (''​ B ''​), com a sintaxe ​ ''​(1|B/​P)''​. Note quecomo não temos variáveis fixas contínuas, apenas categóricas,​ não há como modelar a inclinação do modelo, apenas o intercepto.
   * Faça a simplificação da estrutura fixa das preditoras e chegue ao modelo mínimo adequado.   * Faça a simplificação da estrutura fixa das preditoras e chegue ao modelo mínimo adequado.
   * Faça a interpretação biológica do resultado baseado nos coeficientes fixos e da variação associada aos fatores aleatórios.   * Faça a interpretação biológica do resultado baseado nos coeficientes fixos e da variação associada aos fatores aleatórios.
Linha 794: Linha 949:
  
 **PARA ENTREGAR ANTES DA PRÓXIMA AULA** **PARA ENTREGAR ANTES DA PRÓXIMA AULA**
-Acesse o [[https://​forms.gle/​ciCcS4ytXDBJyrfn9|formulário]] e responda às questões propostas referentes aos dois exemplos (Praias e Aveia) trabalhados nesse tutorial. ​ +Acesse o [[https://​forms.gle/​T9LpETUubgpq8QN48|formulário]] e responda às questões propostas referentes aos dois exemplos (Praias e Aveia) trabalhados nesse tutorial. ​
- +
  
-{{url>​https://​forms.gle/​ciCcS4ytXDBJyrfn9}} 
 </​WRAP>​ </​WRAP>​
  
cursos/planeco/roteiro/11-lmm_rcmdr.1651063869.txt.gz · Última modificação: 2022/04/27 09:51 por adalardo