MPV CLIENTE | Projeto - Ensaio de Eficácia de Fungicida em Soja
Ensaio de eficácia de fungicida em soja
Análise estatística reprodutível com GLMM, Quarto, Docker e renv
Este projeto apresenta um pipeline completo de análise estatística para um ensaio de campo simulado de eficácia de fungicida na cultura da soja. A proposta integra experimentação agrícola, modelagem estatística, programação em R e reprodutibilidade computacional, com entrega final em relatório técnico em Quarto.
O material foi estruturado como um MVP de mentoria individual, com foco em preparar o aluno para sessões práticas a partir de um fluxo organizado, documentado e replicável.
Objetivos:
- estruturar um pipeline analítico claro, do dado bruto ao relatório final;
- demonstrar o uso de modelos mistos para dados hierárquicos e medidas repetidas;
- aplicar boas práticas de reprodutibilidade com scripts modulares,
renve Docker; - comunicar resultados técnicos em um relatório navegável e reutilizável em Quarto.
Repositório no GitHub
Acesse o projeto no GitHub aqui.
Relatório
O projeto inclui um relatório técnico em Quarto com interpretação metodológica, resultados, visualizações, dicionário de conceitos e referências bibliográficas.
Acesse o relatório publicado no link.
Sobre o projeto
Este projeto foi desenvolvido para demonstrar, de forma integrada, quatro frentes centrais:
Modelagem estatística: ajuste de GLMM com distribuição beta para severidade da doença e LMM gaussiano para produtividade, incluindo comparação de modelos por AIC, diagnóstico de resíduos e comparações múltiplas.
Conceitos estatísticos: efeitos fixos e aleatórios, distribuição beta, AIC, delta-AIC, médias marginais estimadas, correção de Tukey e componentes de variância, apresentados em linguagem técnica, mas acessível.
Experimentação agrícola: delineamento em blocos casualizados completos, medições repetidas no tempo, covariáveis ambientais e estrutura hierárquica típica de ensaios de campo.
Programação em R: scripts modulares, ambiente versionado com
renv, relatório em Quarto e execução do pipeline com ou sem container.
O relatório gerado serve como material de apoio para consulta dos conceitos, acompanhamento do raciocínio analítico e reprodução das etapas do projeto antes e após a mentoria.
Após esta etapa com dados simulados, o mesmo raciocínio analítico foi levado para os dados do aluno, respeitando as particularidades do contexto real.
Contexto agronômico
A ferrugem asiática da soja (Phakopsora pachyrhizi) está entre as doenças de maior impacto econômico para a cultura no Brasil. Neste projeto, o ensaio considera quatro tratamentos, sendo um controle e três doses de fungicida, em delineamento em blocos casualizados completos (RCBD), com avaliações em três momentos após a aplicação e condução em três localidades.
Os dados foram simulados para reproduzir a estrutura e a variabilidade esperadas em um ensaio real de registro de defensivo agrícola, permitindo verificar se o modelo ajustado recupera os padrões definidos na simulação.
Estrutura do repositório
ensaio_fungicida_soja/
├── Dockerfile
├── README.md
├── renv.lock
├── .Rprofile
├── rodar_pipeline.R
├── R/
│ ├── 01_simular_dados.R
│ ├── 02_limpar_dados.R
│ ├── 03_eda.R
│ ├── 04_analise_glmm.R
│ └── 05_configurar_renv.R
├── report/
│ ├── relatorio.qmd
│ ├── referencias.bib
│ └── estilo.css
├── data/
│ ├── raw/
│ └── processed/
└── output/
├── figuras/
├── tabelas/
└── modelos/
Variáveis simuladas
| Variável | Descrição |
|---|---|
tratamento |
Controle, dose baixa, dose média, dose alta |
bloco |
6 blocos, modelados como efeito aleatório |
local |
3 localidades, modeladas como efeito aleatório |
tempo_dias |
30, 60 e 90 dias após aplicação |
umidade_rel |
Umidade relativa do ar (%) |
temp_media |
Temperatura média diária (graus C) |
severidade |
Percentual de área foliar afetada (0 a 100) |
produtividade |
Produção de grãos (kg/ha) |
Etapas analíticas
O pipeline inclui:
- simulação dos dados com estrutura compatível com ensaio de campo;
- limpeza e preparação das bases;
- análise exploratória das distribuições e relações entre variáveis;
- ajuste de GLMM para severidade;
- ajuste de LMM para produtividade;
- diagnóstico de resíduos por simulação;
- seleção de modelo por AIC e delta-AIC;
- estimação de médias marginais e comparações múltiplas com Tukey;
- consolidação dos resultados em relatório técnico.
Decisões metodológicas
Por que GLMM e não ANOVA?
A variável de severidade é uma proporção assimétrica, as observações são repetidas no tempo e há uma estrutura hierárquica com blocos e localidades. Uma ANOVA tradicional não acomoda adequadamente essas três características ao mesmo tempo.
Por que distribuição beta?
A distribuição beta é adequada para modelar proporções no intervalo (0, 1) e evita o uso de transformações clássicas, como arco-seno, que tendem a gerar interpretações menos diretas e distorções nos extremos da distribuição.
Por que bloco e localidade como efeitos aleatórios?
Blocos e localidades representam uma amostra de condições possíveis de avaliação. Ao modelá-los como aleatórios, a inferência deixa de ficar restrita apenas aos níveis observados e ganha capacidade de generalização.
Pacotes principais
| Pacote | Função |
|---|---|
glmmTMB |
Ajuste de GLMM com distribuição beta e gaussiana |
DHARMa |
Diagnóstico de resíduos por simulação |
emmeans |
Médias marginais e contrastes |
ggplot2 |
Visualizações |
gt / DT |
Tabelas no relatório |
quarto |
Geração do relatório técnico |
renv |
Gerenciamento de versões dos pacotes |
Requisitos para execução
Para rodar este projeto, é recomendável ter:
- R instalado e funcionando no ambiente local.
- Dependências restauradas com
renv. - Quarto instalado para renderização do relatório.
- Docker, caso a execução seja feita por container.
Execução
Com Docker
docker build -t ensaio-fungicida .
docker run --rm -v $(pwd)/output:/project/output ensaio-fungicidaO relatório HTML será gerado em output/relatorio.html.
Sem Docker
Restaure o ambiente e execute os scripts em ordem:
renv::restore()
source("R/01_simular_dados.R")
source("R/02_limpar_dados.R")
source("R/03_eda.R")
source("R/04_analise_glmm.R")
quarto::quarto_render("report/relatorio.qmd")Ou rode o pipeline completo de uma vez:
source("rodar_pipeline.R")Configuração do renv
O script R/05_configurar_renv.R reúne as instruções para inicializar, registrar e restaurar o ambiente do projeto com renv.
Diferenciais do projeto
Este projeto se destaca por combinar, no mesmo fluxo:
- estrutura experimental coerente com ensaios agronômicos;
- modelagem estatística compatível com a natureza dos dados;
- organização reprodutível dos scripts;
- documentação técnica pronta para estudo, ensino e portfólio.
Autora
Jennifer Luz Lopes