Escolar Documentos
Profissional Documentos
Cultura Documentos
ii ROSSI, R. M.
Prefácio
Em meados de 2006, durante uma conversa informal com o professor Robson M.
Rossi, à época meu aluno e orientado de doutorado no Programa de Pós-Graduação em
Zootecnia, levantei a questão acerca da dificuldade dos pesquisadores adotarem a aplicação de
novas metodologias de análises de dados experimentais. Esse comportamento parece persistir
porque os estudantes de pós-graduação tomam seus orientadores como exemplo e tendem a
repetir as metodologias por eles usadas.
A alteração desse quadro deveria passar pela ampliação dos conhecimentos dos alunos
de pós-graduação, por meio da oferta de disciplinas que lhes mostrassem as diferentes formas
disponíveis de análises dos dados, para diferentes situações experimentais. A expectativa seria
possibilitar-lhes a utilização de modelos mais complexos que reflitam melhor a realidade e,
que ao mesmo tempo expliquem biologicamente os fenômenos naturais e/ou experimentais,
contribuindo para o desenvolvimento das pesquisas científicas.
Neste sentido, sugeri a criação de um material didático sobre o tema Inferência
Bayesiana, sabendo que era um assunto com ao qual ele já havia tido contado e adquirido
conhecimento no seu mestrado.
A provocação surtiu efeito. Ele “mordeu a isca”, incorporou a idéia e iniciou o projeto
de escrever uma pequena apostila com alguns procedimentos básicos de análise de dados, por
meio da Estatística Bayesiana, aplicados no programa computacional WinBUGS.
Os dados usados para ilustrar os procedimentos apresentados tinham sido coletados no
Programa de Pós-graduação em Zootecnia e foram cedidos por colegas da pós-graduação, por
professores do departamento. Alguns foram obtidos durante consultorias e projetos dos quais
participou ou, ainda, informações de outros materiais didáticos disponíveis na literatura.
A primeira versão do material produzido era simples e sucinta, mas bastante para ser
utilizada em uma disciplina especialmente criada no programa da pós-graduação para que
pudesse ser aplicada a uma turma inicial.
Para facilitar a sedimentação dos conhecimentos adquiridos na disciplina, sugeri que
parte da avaliação consistisse na apresentação, em forma de relatório, das análises dos dados
reais, coletados em seus próprios experimentos de mestrado ou doutorado, utilizando a
metodologia Bayesiana aprendida no curso.
A idéia funcionou e, progressivamente, o uso dos procedimentos apresentados na
disciplina foi sendo disseminado. Atento, o professor Robson percebia a evolução das
expectativas na satisfação em realizar uma análise Bayesiana. Assim, muitos trabalhos foram
incorporados ao material didático e, no decorrer de quatro anos, foi acumulado um conteúdo
bastante rico sobre o assunto. Isto permitiu que o material fosse transformado em um livro
para que outros interessados tivessem acesso.
Posso concluir que o objetivo principal da idéia foi atingido. O livro presta uma
relevante contribuição à melhoria das pesquisas científicas e fornece ferramentas suficientes
para a realização de análises estatísticas Bayesianas, que além de elegantes são,
frequentemente, mais coerentes com a realidade biológica.
iii ROSSI, R. M.
RESUMO
Este livro é uma introdução aos procedimentos estatísticos em modelagem Bayesiana nas
análises de dados da Zootecnia e áreas afins. A metodologia é proposta como alternativa às
metodologias frequentistas tradicionalmente utilizadas. Com capítulos didáticos, o texto é
voltado para estudantes de graduação e pós-graduação e utiliza dados simulados e reais
extraídos de estudos publicados e para exemplificar os conceitos da metodologia utilizada.
Esta obra procura mostrar uma maneira fácil de entender a Inferência Bayesiana, sem
minimizar, no entanto, a importância do assunto. Entre as principais aplicações abordadas,
será dada ênfase ao estudo das mais importantes distribuições de probabilidade, ao ajuste de
modelos aos dados, à inferência e interpretação biológica dos parâmetros e comparações entre
populações das quais os dados foram retirados. O programa WinBUGS/OpenBugs assim como
o R com sua livraria BRugs, são programas estatísticos gratuitos e disponíveis na web e foram
elaborados especificamente para procedimentos Bayesianos. Este material foi elaborado com
objetivo de familiarizar o usuário com esses programas computacionais na realização das
análises de dados. A partir das funções básicas apresentadas neste livro, um pacote para
ambiente RStudio denominado BioBayes, contendo diversas funções para análise Bayesiana
de dados, foi disponibilizada no servidor GitHub por meio do endereço:
https://github.com/rmrossidesuem/BioBayes.
iv ROSSI, R. M.
... As pessoas que passam por nós não vão sós
Dedico
com carinho.
v ROSSI, R. M.
BIOGRAFIA
rmrossi@uem.br
www.des.uem.br
vi ROSSI, R. M.
AGRADECIMENTOS
Ao Prof. Dr. Elias N. Martins, pela dedicada orientação, ajuda, incentivo, ensinamentos
transmitidos, pelo exemplo de profissional, pela confiança em mim depositada, pelas
oportunidades oferecidas e pela amizade.
vii ROSSI, R. M.
Sumário
Apresentação.............................................................................................................................1
1.1 Introdução................................................................................................................3
2.1 Introdução.................................................................................................................25
viii ROSSI, R. M.
2.3 Atualização da incerteza...........................................................................................26
3.1 Introdução.................................................................................................................39
3.3 Aplicações.................................................................................................................51
ix ROSSI, R. M.
Aplicação 3.3.4. Estimação da média de peso uterino em ratas.............................56
rainhas.....................................................................................61
cabras........................................................................................65
leitões........................................................................................73
postura....................................................................................................81
x ROSSI, R. M.
Aplicação 3.3.21. Comparação entre curvas de crescimento - Potencial
germinativo em plantas.....................................................101
4.1 Introdução...............................................................................................................117
4.2 Procedimentos.........................................................................................................117
4.3 Aplicações...............................................................................................................120
novilhas.................................................................................132
xi ROSSI, R. M.
Aplicação 4.3.6 Análise Bayesiana para ajuste de curva de crescimento de tilápias
do Nilo...................................................................................................................153
heterophylla..........................................................................................................161
Considerações Finais.……….…………………….....................…..........................…...…...168
Referências…...………………...…………………….………………..…......…...................169
xii ROSSI, R. M.
Introdução aos métodos Bayesianos na análise de dados zootécnicos
com uso do WinBUGS e R
Robson M. Rossi
Apresentação
A maioria dos trabalhos sob o ponto de vista Bayesiano ocorreram depois de 1970,
apesar de Jeffreys (1939) ter sido o primeiro a estudá-lo. Mas foi a partir de 1980 que as
técnicas Bayesianas mostraram ser uma boa alternativa para a metodologia frequentista, tida
como padrão de análise. Esse crescimento só se deu com o aumento tecnológico e recursos
computacionais necessários nas simulações.
Segundo Pereira (2005)1,todo problema e em diferentes áreas possui solução Bayesiana,
cuja maior vantagem é não haver restrições, ao contrário da frequentista. ‘O Bayesianismo
talvez seja uma forma de ver o mundo, mas certamente é a maneira de se fazer Estatística’.
Ao utilizar os dados experimentais, com a metodologia Bayesiana, é possível aprimorar as
informações previamente existentes sobre os parâmetros e melhorar a confiabilidade das
estimativas.
Para uma abordagem mais abrangente da Inferência Bayesiana, recomenda-se a consulta
a Berger (1985), Box e Tiao (1992), Gamerman e Migon (1993), Smith e Bernardo (1994),
Paulino et al. (2003), entre outros.
Geralmente, quando não se é possível obter as distribuições marginais analiticamente,
recorre-se a processos e métodos computacionais de simulação complexos, para se obter
estimativas para os parâmetros de modelos hierárquicos, distribuições conjugadas, modelos
dinâmicos, ou modelos híbridos. Métodos como Metropolis-Hastings (METROPOLIS, 1953
e HASTINGS, 1970) via amostrador de Gibbs em Cadeias de Markov, são muito utilizados na
obtenção de amostras a posteriori.
Um dos maiores problemas que impede o desenvolvimento da inferência Bayesiana
sempre foi a dificuldade de sua implementação em problemas práticos. Essa dificuldade era
em parte decorrente do amplo espectro de possibilidades existentes para a especificação da
1Carlos A. Bragança Pereira e Sergio Wechyler (IME/USP e membros do ISBRA: Seção Brasileira da Sociedade
Internacional de Análise Bayesiana).
1 ROSSI, R.M.
distribuição a priori, e em parte decorrente da dificuldade de sumarização da distribuição a
posteriori, resultante via decomposições em distribuições condicionais completas.
Com o advento de novas tecnologias surgiu uma ferramenta muito utilizada atualmente
na área Bayesiana: o WinBUGS (SPIEGELHALTER et al., 1994), que facilita a
implementação na obtenção das amostras a posteriori. O programa computacional R (R
Development Core Team) já está implementado com rotinas no contexto Bayesiano como, por
exemplo, a livraria BRugs. Recomendamos ao leitor/usuário a leitura do livro Bayesian
Computation with R de Jim Albert (2007) e Bayesian Modeling Using WinBUGS de L.
Ntzoufras (2009).
O objetivo deste texto é dar, de forma básica, condições aos alunos de graduação e pós-
graduação nas áreas ligadas a pesquisas e que utilizam métodos estatísticos nas análises de
dados, de aprimorar seus conhecimentos com pesquisas científicas as quais se limitam às
restrições e pressupostos da metodologia frequentista. A Estatística Bayesiana pode ser uma
alternativa poderosa se bem utilizada.
No Capítulo I, uma introdução à linguagem R é apresentada como parte necessária à
manipulação de rotinas específicas durante o desenvolvimento do livro. No Capítulo II,
apresenta-se breve explanação sobre a metodologia Bayesiana é apresentada para que o leitor
possa compreendê-la porém, sem se aprofundar sobre o assunto abordado. Nos Capítulos III e
IV são desenvolvidas aplicações com os programas WinBUGS/OpenBugs e o BRugs do R,
respectivamente, inseridas no contexto de análises de dados zootécnicos mais utilizadas na
área. Os dados utilizados nas aplicações foram advindos de colaborações de alunos e
profissionais das respectivas áreas de atuação. A partir das funções básicas apresentadas neste
livro, um pacote para ambiente RStudio denominado BioBayes, contendo diversas funções
para análise Bayesiana de dados, foi disponibilizada no servidor GitHub por meio do
endereço: https://github.com/rmrossidesuem/BioBayes.
2 ROSSI, R.M.
Módulo I – Introdução ao programa R
1.1Introdução
3 ROSSI, R.M.
1.2 Usando a "Ajuda Ajuda Html"
4 ROSSI, R.M.
Exemplo: Se estamos interessados no assunto ‘modelos de efeitos fixos lineares e não-
lineares’ ou nlme, então podemos fazer o seguinte:
Pacotes carregar pacote... nlme e então teremos tudo sobre o assunto no R.
5 ROSSI, R.M.
Observações
1. Todas as funções inseridas no R ficam armazenadas no computador. Para saber
quais são elas, digite:
objects()
2. No entanto, é útil limpar tudo antes de qualquer trabalho, utilizando o
comando:
rm(list = ls())
3. Caso queira limpar somente alguns objetos, dê o comandode remoção:
rm(nome1,...,nomek)
4. O histórico dos comandos é salvo pelo R quando saímos do programa. A
pergunta sempre é feita: ‘salvar a área de trabalho?’ Os arquivos são armazenados
numa pasta default do R com extensão *.RData e *.Rhistory.
É interessante modificarmos a pasta onde estão nossos trabalhos ou até mesmo salvá-
lo em um dispositivo externo. Procedimento:
‘Arquivo salvar área de trabalho... (indique o caminho da pasta)’.
6 ROSSI, R.M.
Assim podemos ler esses arquivos numa próxima vez e continuar nosso trabalho.
‘Arquivo carregar área de trabalho ou histórico’.
7 ROSSI, R.M.
As operações básicas são descritas na Tabela 1.1 a seguir:
8 ROSSI, R.M.
1.4 Criando objetos: variáveis, vetores e matrizes
9 ROSSI, R.M.
Inv.S = # matriz inversa
solve(matrix
(c(2,3,4,2,4,3,1,0,
2),3,3))
Listas # Conjunto de componentes que podem ser de
t=list(x=c(1,3,5,7) # qualquer um dos outros tipos de objetos
, t[1] # aqui há os valores numéricos de x
y = c(2,4,6,8), t[2] # aqui há os valores numéricos de y
z= t[3] # aqui há os literais de z
c(”A”,”B”,”C”,”
D”))
10 ROSSI, R.M.
Objetivos: Estimar a disponibilidade relativa do Fósforo nos Fosfatos de rocha Araxá
e Patos de Minas e escolher o melhor.
# Análise dos dados, considerando-se o Fosfato Araxá
Entrada de dados
x.araxa = c(0.184,0.35,0.516,0.683,0.849,1.015) # Consumo de Fósforo
y.araxa = c(21.28,31.6,32.42,41.74,42.06,53.38) # Resistência do fêmur à
quebra
Ajuste linear
lm.araxa = lm(y.araxa ~ x.araxa)
summary(lm.araxa)
anova(lm.araxa)
11 ROSSI, R.M.
60
50 Reta estimada: Y = 16.4 + 34.6X
R² = 0,94
Resistência do Fêmur
40
30
Regressão
Confiança
Predição
20
Consumo de P (Araxá)
Figura 1.1.Ajuste Linear da Resistência do Fêmur em coelhos pelo Consumo de Fósforo (P) existente
nos Fosfatos de rocha de Araxá.
Observação: A análise dos dados considerando os Fosfatos Patos de Minas e Bicálcico são análogos e
serão omitidos.
x.patos = c(0.195,0.35,0.505,0.661,0.816,0.972)
y.patos = c(23.5,34.59,31.18,43.27,40.36,50.45)
lm.patos = lm(y.patos ~ x.patos)
x.bicalcico = c(0.18,0.36,0.5,0.65,0.78,0.94)
y.bicalcico = c(25,39,43,60,63,71)
lm.bicalcico = lm(y.bicalcico ~ x.bicalcico)
12 ROSSI, R.M.
70
60
Resistência do Fêmur
50
40
30
Bicálcico
Araxá
Patos
20
Consumo de P
Figura 1.2. Comparação gráfica dos ajustes lineares da Resistência do Fêmur em coelhos pelo
Consumo de Fósforo (P) existente nos Fosfatos de rocha de Araxá, Patos de Minas e Bicálcico
(padrão).
Obviamente se percebe por meio da Figura 1.2, que o Fosfato Bicálcico apresenta
maior coeficiente angular que os demais Fosfatos, portanto, neste caso, é considerado padrão.
Para o cálculo da DR dos Fósfatos, tem-se:
DRAraxá = 34,58/61,40 = 0,5632 ou 56,32%
DRPatos = 30,19/61,40 = 0,4917 ou 49,17%
Conclui-se que o Fosfato Araxá é superior quando comparado ao de Patos de Minas.
O R está repleto de pacotes com funções prontas, basta navegar no diretório:
Ajuda → Ajuda Html →Packages
Mesmo que não haja função específica, podemos criar uma. No próximo tópico
apresentaremos alguns procedimentos básicos e algumas rotinas.
13 ROSSI, R.M.
1.6 Criando funções básicas
n
Exemplo 1.6.2. Soma quadrática : ∑ (x i − µ) 2
i =1
SQ= function(x)
{
mi = mean(x)
soma = sum((x - mi)^2)
soma
}
x = c(2,3,4,2,4)
SQ(x)
14 ROSSI, R.M.
O R dispõe das principais funções de densidade de probabilidade.
A Tabela 1.3 apresenta os comandos.
Tabela 1.3. Principais distribuições de probabilidade.
Argumentos Argumentos
Nome Distribuição Default
Necessários Opcionais
beta Beta shape1, shape2
binom Binomial size, prob
cauchy Cauchy location, scale 0, 1
chisq Qui-quadrado df
exp Exponencial
F Fisher df1, df2 rate 1
gamma Gama shape
geom Geométrica prob
hyper Hipergeométrica m, n, k
lnorm Log-normal meanlog, sdlog 0, 1
logis Logística location, scale 0, 1
nbinom Binomial Negativa size, prob
norm Normal mean, sd 0, 1
pois Poisson lambda
T t-Student df
unif Uniforme min, max 0, 1
weibull Weibull shape scale --, 1
*Novas distribuições sempre são implementadas em pacotes que são disponibilizados.
15 ROSSI, R.M.
Exemplo 1.6.5. Normal com média 3 e desvio-padrão 1,5.
Chamando a função:
x = c(1,3,4,6,7,8,9,-3,0,193,-44)
separapar(x)
Muitas vezes é de grande utilidade a utilização das funções repeat e/ou break como
condição na programação, isto é, ‘se isto faça aquilo’. Um exemplo bem simples pode ser
visto da seguinte forma:
repeat {
z = runif(1)
16 ROSSI, R.M.
if (z>0.5) break
}
cat('\n Valor gerado: ', z)
Neste exemplo, deseja-se que a rotina gere um único número aleatório a partir de uma
distribuição uniforme, verifique se tal número é superior a 0,5, então ele apresentará o número
gerado, caso contrário irá repetir esse procedimento até que ocorra tal situação.
Exemplo1.7.2.Usar a função ‘repeat’ para criar uma função com o seguinte algoritmo.
(Passo 1) se z gerado de uma normal padrão for, em módulo, maior do que 2, repita
até gerar um valor de interesse;
(Passo 2) informe o valor quando gerado.
Solução:
repeat {
z = rnorm(1,0,1)
if (abs(z)<=2) break
}
cat('\n Valor gerado: ', z)
Solução:
f = function(x)
{
x^3 + 2*x
}
f(x=3)
# plotando a função f:
x = seq(-10, 10, 0.01)
y = f(x)
plot(x, y, bty="n", type="l")
abline(h=30, lty=2)
for (x in 1:length(x))
{
print (f(x))
if (f(x) > 30) break
}
17 ROSSI, R.M.
1.7.3 Usando a função “nlm”
A rotina nlm é uma função interna do R para obter pontos de mínimo em funções,
baseada em algoritmo tipo Newton-Raphson.
?nlm
A sua forma geral é dada por: nlm(f,x)
Exemplo1.7.4. Encontrar o ponto de máximo da função f(x) = -3x 2 +5x-10.
Solução:
f = function(x) -3*x^2+5*x-10
x = seq(-10,10,0.01)
y = numeric()
for ( i in 1:length(x)) y[i] = f(x[i])
plot(x,y,type='l', bty='n')
f2 = function(x) -f(x)
z = nlm(f2, 5)
z$estimate
# 0.833333
f(z$estimate)
# ou
z$minimum
# -7.916667
Existem outros tipos de comandos similares disponíveis no R:
optimize(), fitdistr() e mle(), disponíveis para a estimação por máxima
verossimilhança nos pacotes MASS e MLE.
18 ROSSI, R.M.
1.8 Construindo gráficos
Uma das maiores vantagens do R é a qualidade dos gráficos que podem ser salvos em
vários formatos, como exemplo, *.tiff, *.ps ou *.pdf de alta resolução. A variedade de
gráficos é enorme, portanto serão apresentados apenas os mais utilizados.
19 ROSSI, R.M.
1.8.2 Comando “hist”
x = rnorm(1000,3,1.5)
hist(x,xlab="Variável X",ylab="Frequência",
main="Histograma",col="lightblue",border=NULL)
outra opção:
hist(x,xlab="Variável X",ylab="Probabilidade",
br=6,main="Histograma",freq=FALSE,col="gray",border=NULL)
0.20
200
0.15
Probabilidade
150
Freqüência
0.10
100
0.05
50
0.00
0
-2 0 2 4 6 8 -2 0 2 4 6 8
Variável X Variável X
20 ROSSI, R.M.
Exemplo 1.8.3. Histograma de uma distribuição Normal(0;1).
z = sort(rnorm(10000,0,1))
hist(z,prob=T,xlim=c(-3,3),ylim=c(0,0.5),col='skyblue',main="Histogramada
Normal (0,1)",ylab="Probabilidade")
lines(z,dnorm(z,0,1))
Exemplo1.8.5. A linha de comando a seguir terá como objetivo ajustar, via função
fitdistr da livraria MASS, três tipos de distribuições distintas, a fim de se obter a que melhor
se aproxima da distribuição natural, que pode ser visualizada no histograma dos dados,
referentes à variável ‘tempo’, como, por exemplo, tempo (em semanas) até a ocorrência de
um evento qualquer.
t = c(1,22,3,12,8,17,2,11,8,1,2,5,4,1,8,2,5,1,4,1,8,10,7,32,23,22,6,16,34,32,25,11,
20,19,6,17,35,6,13,9,6,10)
library (MASS)
fitdistr(t,"weibull")
# shape scale
# 1.1652964 12.1839177
# ( 0.1425405) ( 1.7012732)
fitdistr(t,"lognormal")
# meanlog sdlog
# 2.0042166 1.0506065
# (0.1621121) (0.1146306)
fitdistr(t,"exponential")
# rate
# 0.08659794
# (0.01336235)
21 ROSSI, R.M.
# Histograma com as curvas ajustadas
Observa-se claramente pelos gráficos gerados que a distribuição Weibull foi a que
apresentou um melhor ajuste para os dados. Obviamente testes estatísticos seriam necessários
para tomadade decisão, porém tal procedimento será apresentado nos módulos seguintes.
Figura 1.5 Ajuste das distribuições Weibull, Log-Normal e Exponencial a dados simulados.
22 ROSSI, R.M.
1.9 Importação e exportação de dados
Existem diferentes modos de importação de dados no R.
rm(list=ls(all=TRUE)) # Limpando memória do R
setwd("C:\\Work") # Diretório de trabalho – onde o arquivo de dados deve estar
alocado
23 ROSSI, R.M.
Para exportação de dados, pode-se utilizar o comando “write”:
library(MASS)
setwd("C:\\Work")
write.matrix(dados, file = "dadossaida1.txt", sep=" ")
write.table(dados, file = "dadossaida2.txt")
write.csv(dados, file = "dadossaida3.csv")
24 ROSSI, R.M.
Módulo II – Introdução à modelagem Bayesiana
2.1 Introdução
O Reverendo Thomas Bayes, em 1763, em sua obra póstuma intitulada Na Essay
Towards Solving a Problem in the Doctrine of Chances, apresenta a Inferência Estatística
Bayesiana como uma nova metodologia de análise de dados fundamentada em probabilidades
condicionais.
Os dados amostrais são comuns aos modelos frequentistas e Bayesianos, porém com
interpretações distintas. Enquanto no modelo frequentista o parâmetro é um escalar ou um
vetor desconhecido, porém fixo, no modelo Bayesiano aquele é considerado um escalar ou
vetor aleatório desconhecido que por sua vez, é quantificado em termos de probabilidade e
formalmente denominado como distribuição a priori. As informações a priori e amostrais
permitem modelar e atualizar as estimativas dos parâmetros a posteriori por meio da regra de
Bayes.
As aplicações da metodologia Bayesiana são inúmeras, em diferentes contextos e áreas.
Neste texto será dada ênfase à área zootécnica em aplicações simuladas e com dados reais.
Ficará a cargo do leitor o conhecimento prévio de algumas técnicas frequentistas empregadas
aqui, já que a metodologia será apresentada de modo direto, visto que os objetivos principais
são apresentar e utilizar as ferramentas computacionais disponíveis para a análise Bayesiana,
assim como as interpretações dos resultados. Logo mais será apresentado de forma resumida,
o procedimento Bayesiano. É altamente sugestivaa leitura de Box e Tiao (1992), Gamerman e
Migon (1993), Paulino et al. (2003) entre outros.
25 ROSSI, R.M.
especificamente, suponha que o interesse seja atribuir uma probabilidade a um evento, A,
associado a um experimento aleatório. Baseado no conhecimento da mecânica do
experimento, que corresponde a um estado inicial de informação, atribui-se uma
probabilidade, P(A), ao evento A. Contudo, se houver a informação de que o outro evento, B,
ocorreu e que essa ocorrência possa modificar o estado inicial de informação, é permitido
atualizar (reavaliar) P(A) por um novo valor, denotado por P(A|B), chamado de probabilidade
condicional do evento A dado B. Denotando-se por P uma probabilidade que corresponde ao
estado inicial de informação sobre o experimento, pode-se definir coerentemente P(A|B) por
P(A ∩ B)
P(A | B) = ; P(B) > 0
P(B)
daí vem que
P(A ∩ B) = P(A | B)P(B) .
Teorema de Bayes
Supõe-se que A1, A2, ...,An e B sejam eventos associados a um experimento aleatório
tais que A1, A2, ... ,An são mutuamente exclusivos (Ai∩Aj=φ;i≠j) e B⊆∪Ai. Se P for uma
probabilidade tal que P(Ai)>0, i = 1, 2, ..., n e P(B) > 0, então
P(B | Ai )P(A i )
P(Ai | B) = n
; i = 1, 2,..., n
∑ P(B | A )P(A )
i
i i
26 ROSSI, R.M.
e os parâmetros de um modelo estatístico, então todos são considerados quantidades
aleatórias.
Em muitas situações, antes de o experimento ser realizado, o pesquisador é capaz de
descrever probabilisticamente sua incerteza sobre θ por meio de uma distribuição de
probabilidade a priori para θ, π(θ). Neste contexto, geralmente, trabalhar-se-á com
distribuições a priori não-informativas. Discussão a respeito de utilização de outros tipos de
distribuições a priori pode ser obtida de forma mais detalhada em Berger (1985), Box e Tiao
(1992), Bernardo e Smith (1994) e O'Hagan (1994).
Supõe-se agora que, uma vez realizado o experimento, a variável aleatória X assuma o
valor x. Então, dada a informação que o evento (X=x) ocorreu, o pesquisador pode atualizar a
distribuição de probabilidade π(θ) pela distribuição de probabilidade condicional de θ,
conhecida como distribuição de probabilidade a posteriori para θ, π(θ|x).
O objetivo da Inferência Bayesiana é justamente formalizar a passagem de π(θ) para
π(θ|x):
Caso Discreto Caso Contínuo
L(θ|x)π(θ) L(θ|x)π(θ)
π(θ|x) = π(θ|x) = [2.1]
∑ L(θi |x)π(θi )
i ≥1
∫ L(θ|x)π(θ)dθ
θ
Como em cada uma das expressões acima o denominador é igual à imagem do ponto x
pela função de probabilidades ou pela função densidade de probabilidades de X e, portanto,
constante, logo de (2.1) tem-se a seguinte proporcional:
27 ROSSI, R.M.
2.4 Principais características do modelo Bayesiano
1. os parâmetros θ são tratados como quantidades aleatórias;
2. o modelo estatístico não será somente π(x|θ), mas π(x,θ), a distribuição conjunta
dos dados x e dos parâmetros θ;
3. as estimativas para θ não serão somente valores, mas sim uma distribuição de
probabilidades;
4. π(θ) expressa a incerteza sobre θ antes de se observar os dados x, que dependem
dele (a priori). Por exemplo: diga-se que um paciente qualquer chegue a uma
clínica e deseja saber se é portador de certa doença, então o médico responde: ‘a
priori você tem 15% de chance (baseado em estimativas e/ou conhecimento
prévio da população)’. À medida que o paciente informa para o médico que tem
antecedentes familiares, ele atualizará a resposta: ‘a posteriori você tem 27% de
chance de ter tal doença’;
5. π(θ|x) é a distribuição de probabilidades dos parâmetros θ ‘à luz’ dos dados x,
isto é, expressa a incerteza sobre θ depois de se observar os dados x que
dependem dele (a posteriori). De posse de π(θ|x), podem-se examinar quaisquer
informações de θ (média, variância, percentis, probabilidade de assumir
determinados valores etc).
28 ROSSI, R.M.
2.5. Vantagens e desvantagens do procedimento Bayesiano
A Teoria Frequentista muitas vezes, é limitada em vários aspectos:
1. pela aceitação de algo não real; por exemplo, aceitação da distribuição normal
(gaussiana) para os dados;
2. por recursos computacionais limitados: estimativas de máxima
verossimilhança são complexas em alguns casos, como por exemplo, na
obtenção de componentes genéticos em melhoramento animal e vegetal;
3. obtenção de estimativas absurdas como, por exemplo, intervalos de confiança
infinitos, principalmentes nos casos em que o tamanho amostral é insuficiente.
A Inferência Bayesiana pode ser uma alternativa ao Método Frequentista nessas
situações além das descritas a seguir:
1. a utilização de informação prévia a respeito do parâmetro de interesse pode
fazer com que as estimativas a posteriori sejam mais coerentes com a realidade da
variável de interesse;
2. a utilização de distribuições não-informativas permite fazer camparações com
os resultados da inferência frequentista.
29 ROSSI, R.M.
2.6. Exemplos analíticos e aplicações no R
Serão apresentados alguns modelos simples para ilustrar a teoria apresentada.
30 ROSSI, R.M.
α+t
Sua média a posteriori é dada por E(θ | X) = . Sob o ponto de vista
α+β+ n
t
frequentista, é um estimador não viciado e de variância uniformemente mínima (e.m.v) de
n
θ e E(θ | T) que pode ser visto como:
α+t α+t t
E(θ | T) = E(θ) + 1 − ,
α + β + n media a priori α + β + n n
e.m.v.
isto é, a média da distribuição a posteriori é igual a uma combinação linear convexa (soma =
t
1) da média a priori e do estimador frequentista de θ, , que representa a proporção da
n
característica na amostra.
Supõe-se que uma pesquisa será realizada com bovinos com o objetivo de verificar se
determinada predisposição ou característica genética na vaca influi no sexo do bezerro. Nesta
situação a hipótese de nulidade será: ‘Não há influência da predisposição genética na
determinação do sexo do animal’. Sabe-se que, após o experimento, isto é,após 980
nascimentos, foram observados 437 nascimentos de bois machos.
n
Suposições do modelo: Yi ~ Bernoulli(θ) tal que t = ∑ yi ~ Binomial(n, θ); com n =
i =1
31 ROSSI, R.M.
especificada grosseiramente e, neste quadro, as distribuições impróprias possam ser aceitáveis
para o subjetivista na ótica de constituírem aproximações razoáveis a distribuições próprias
que representam fraca informação a priori.
A distribuição marginal condicional a posteriori de θ terá forma conhecidda dada por:
θ|y ~ Beta(437+1, 543+1).
Podem-se obter as estatísticas diretamente das fórmulas conhecidas da distribuição Beta
ou simulando-se uma cadeia de n = 1.000 observações de θ|y, via algum programa estatístico
como, por exemplo, o R de acordo com a linha de comando:
rbeta(n,shape1,shape2)
que gera n valores de uma Beta com parâmetros: α = shape1 e β = shape2. Assim, no R,
digite:
priori=rbeta(1000,1,1)
par(mfrow=c(1,2))
hist(priori,main="",xlab=expression(paste(theta)),ylab="Densidade",col="g
ray")
posteriori= rbeta(1000,438,544)
hist(posteriori,main="",xlab=expression(paste(theta,"|y")),ylab="Densidade
",col="gray")
250
100
200
80
150
Densidade
Densidade
60
100
40
50
20
0
θ θ|y
32 ROSSI, R.M.
Os comandos a seguir, à esquerda, fornecerão (à direita) as estatísticas correspondentes:
mean(posteriori) : calcula a média dos dados gerados;
var(posteriori) : calcula a variância dos dados gerados;
median(posteriori) : calcula a mediana dos dados gerados;
quantile(posteriori,c(0.025,0.975)) : calcula os percentis 2,5 e 97,5 dos dados
gerados.
Seguindo estes procedimentos será obtido(a):
E[θ|y] = 0,447 : média a posteriori;
Var(θ|y) = (0,016)² : variância a posteriori;
Md = 0,446 : mediana a posteriori;
ICr(θ;95%) = (0,416,0,478) : intervalo de credibilidade a posteriori de
θ, isto é, seus pencentis 2,5 e 97,5, respectivamente.
A hipótese nula a ser testada será de que “não há influência da predisposição genética
nadeterminação do sexo do animal”, isto é, H0: E(θ|y) = 0,5.
O intervalo de 95% de credibilidade para a posteriori de θ|yindica que a hipótese nula
pode ser rejeitada, isto é, que existe influência da predisposição genética na determinação do
33 ROSSI, R.M.
Exemplo 2.6.2. Modelo Discreto–Poisson.
Assume-se que o número Yi de observações segue uma distribuição de Poisson:
Y~ Poisson(θ), θ> 0
e −θθy
P(Y = y) = ; y = 0, 1, 2, ...
y!
em que θ pode representar a média ou taxa de ocorrência de um evento em um dado intervalo
de tempo, área ou volume. Considere que Y represente o número de ovos postos por dez aves
em tratamento com ração especial durante o período de um mês; o interesse é estimar θ: a
média de produção. Gerados no R com parâmetro 25, obtiveram-se os dados simulados:
set.seed(321)
x = rpois(10,25)
i =1 i =1 i =1
segue uma distribuição Gama com parâmetros (t+α) e (n+β), isto é, θ|y ~ Gama(t+α, n+β),
pois:
π (θ | y ) ∝ L(θ | y )π (θ ) = ( e − nθθ t )( e − βθ θ α −1 ) = e − ( n+ β )θθ (α +t ) −1 .
34 ROSSI, R.M.
No R, utilize as seguintes linhas de comando:
priori = rgamma(1000,1,1)# um pouco informativa
#priori = rgamma(1000, 0.001, 0.001) # não informativa
veross = rgamma(1000,265,10)
posteriori = rgamma(1000,265,11)
plot(density(veross),xlim=c(0,30),ylim=c(0,0.8),main="",xlab=expression(pas
te(theta)),ylab="Densidade",bty="n",lty=3)
lines(density(priori),lty=2)
lines(density(posteriori),lty=1)
legend(15,0.6,c("Priori","Verossimilhança","Posteriori"),lty=c(2,3,1),bty="n
",cex=.7)
summary(posteriori)
median(posteriori)
sd(posteriori)
quantile(posteriori,c(0.025,0.975))
35 ROSSI, R.M.
Exemplo 2.6.3. Modelo Contínuo – Exponencial.
Denote por Y uma variável aleatória com distribuição Exponencial com média
1
E(Y) = ; θ > 0 , isto é, a função densidade de probabilidade de Y é:
θ
f (y|θ) = θe −θy , y> 0
em que θ é desconhecido e pode representar, por exemplo, a taxa de falha de um
equipamento eletrônico.
A função de verossimilhança é escrita na forma:
n
L(θ | y) = θn e −θt , t = ∑ yi .
i =1
Y = {0,28;0,19;0,44;0,01;0,02;0,11;0,10;0,05;0,91;0,01}
tem-se que t = 2,12 e n = 10.
Logo para a priori, θ ~ Gama(α,β), com α=β=1, tem-se a posteriori:
θ|y~ Gama(n+α,t+β) = Gama(10+1,2,12+1)
θ|y~ Gama(11;3,12).
36 ROSSI, R.M.
No R:
par(mfrow=c(1,2))
priori = rgamma(1000,1,1)
hist(priori,main="",xlab=expression(paste(theta)),ylab="Densidade",col="g
ray")
posteriori = rgamma(1000,11,3.12)
hist(posteriori,main="",xlab=expression(paste(theta,"|y")),ylab="Densidade
",col="gray")
200
400
150
300
Densidade
Densidade
100
200
100
50
0
0 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8
θ θ|y
summary(posteriori)
median(posteriori)
sd(posteriori)
quantile(posteriori,c(0.025,0.975))
37 ROSSI, R.M.
Os resultados apresentados na Tabela 2.3 permitem uma análise rápida e útil quando se
trabalha com a família exponencial e estatísticas suficientes. Considerar-se-ão, também,
distribuições a priori não-informativas para os parâmetros.
Quando se trabalha com famílias conjugadas e a distribuição a posteriori é fechada,
isto é, possui a forma de um modelo probabilístico conhecido, então as amostras do parâmetro
de interesse podem ser geradas de modo direto em qualquer programa estatístico, como por
exemplo, o R, via amostragem de Gibbs. Em casos em que a distribuição a posteriori não
assume uma forma fechada conhecida, o programa WinBUGS, em especial, automaticamente
escolhe o método mais apropriado: Metropolis-Hastings (METROPOLIS, 1953 e
HASTINGS, 1970), ARMS (Amostragem por Rejeição Adaptativa – GILKS e WILD, 1992),
entre outros. Para maiores detalhes, a referência do livro Estatística Bayesiana de Paulino,
Turkman e Murteira (2003) é sugerida.
b = 1/σ2 bn = b0 + nb
µn = ( µ0b0 + ny ) / bn
Gama, Ga(b|αi,βi)
2
Normal (s ,n)
N(y|µ,σ) s = ∑ ( yi − µ ) / n
2 2
αn = α0 + n/2
µ conhecido βn = β0 + ns2/2
b = 1/σ2
Exponencial (t,n) Gama, Ga(θ|αi,β i)
Exp(y|θ) t = ∑ yi αn = α0 + n
βn = β 0 + t
38 ROSSI, R.M.
Módulo III – Introdução ao programa WinBUGS/OpenBugs
3.1 Introdução
A sigla BUGS: Bayesian inference Using Gibbs Sampling deu o nome ao WinBUGS
(SPIEGELHALTERet al., 1994), que é um programa estatístico desenvolvido na unidade de
Bioestatística do Medical Research Council da Inglaterra, e serve de acrônimo para Inferência
Bayesiana, usando-se amostragem de Gibbs por meio de MCMC (Markov Chain Monte
Carlo). Este programa é de livre distribuição e pode ser encontrado no site:
www.mrc-bsu.cam.ac.uk/bugs mesma página de onde o download do programa pode ser
efetuado. Alternativamente têm-se o programa OpenBugs disponível no endereço eletrônico:
www.openbugs.info .
A metodologia Bayesiana assim como o programa WinBUGS/OpenBugs têm sido
muito utilizados dada a sua facilidade de operação e a vasta quantidade de problemas que
podem ser resolvidos com eles.
A monitoração de convergência das cadeias amostrais, geradas no
WinBUGS/OpenBugs pode ser feita por meio do pacote coda (Convergence Diagnosis and
Output Analysis, BESTet al., 1995), implementado no R.
3.2 Procedimentos
Basicamente, trabalha-se com os arquivos: ‘model’, ‘data’ e ‘initial’, que se referem,
respectivamente, à definição do modelo de interesse, aos dados amostrais e aos chutes dos
valores iniciais para o processo de iteração das cadeias geradas.
39 ROSSI, R.M.
Exemplo 3.2.1. Assumir-se-á que Y tem uma distribuição de Poisson com parâmetro
θ>0:
Yi ~ Poisson(θ)
Iniciando-se um novo trabalho:
(1) com o programa aberto, vá ao menu em ‘Doodle → new’. Uma janela abrirá
então selecione‘ok’;
(2) para inserir um ‘nó’, é só clicar em qualquer lugar e então após dar um nome
a ele, vá ao menu ‘type’e assim pode especificar o tipo desse nó:
• “estocásticos”: seguem uma distribuição (representados pelas elipses);
• “lógicos”: podem ser, por exemplo, relações ou transformações (representados
pelas elipses);
• “constantes”: dados ou valores fixos (representados pelos retângulos).
A relação entre os nós é por meio de setas de dois tipos:
• simples: indica uma relação de hierarquia, isto é, que o nó de origem é um
parâmetro do nó de destino. No exemplo, ‘theta’ é parâmetro da distribuição dos dados. Aqui
basta selecionar o ‘nó’ destino e, com a tecla ‘Ctrl’ apertada, clicar no ‘nó’ origem, então a
seta aparecerá no sentido ‘origem destino’;
• dupla: indica uma relação direta, isto é, o nó de origem pode ser uma das
variáveis regressoras de um modelo para explicar a variável de destino, por exemplo.
Todos os parâmetros, ou componentes vetoriais, isto é, que possuem índices, devem
estar dentro do quadro que dá origem aos ‘loops’ descritos no rodapé por ‘for (i in 1:n)’. Aqui
basta apertar a tecla ‘Ctrl’ e clicar em qualquer lugar que o quadro aparecerá, e sua dimensão
pode ser alterada, arrastando-se o canto inferior direito. Para alterar os termos ‘i’ e ‘n’,
primeiramente clique sob o canto inferior do quadro, só então digite os valores de interesse
em ‘index’, ‘from’ e ‘up to’.
Qualquer nó pode ser apagado em caso de erro, basta selecioná-lo e, com a tecla ‘Ctrl’
apertada, tecle ‘Delete’.
Um gráfico ‘Doodle’ pode ser transformado em ‘Write code’. Vá ao menu ‘Doodle
Write code’, então aparecerá o código do modelo na linguagem R.
A geração da distribuição a posteriori para θ é via Amostrador de Gibbs e o método
adequado o próprio WinBUGS escolhe por conveniência, isto é, existem distribuições a
posteriori que não possuem formas fechadas, assim se pode utilizar o método de Metropolis-
40 ROSSI, R.M.
Hastings ou até mesmo o ARMS (rejeição adaptativo) para se obter as amostras. Esta é uma
das maiores vantagens do programa já que implementar esses métodos é um tanto árduo.
A título de verificação futura, foi simulada uma amostra via R com 30 valores
provenientes de uma distribuição de Poisson com parâmetro θ = 2,5 por meio do comando
y=rpois(30,2.5) e os valores foram:
Y : {0; 3; 5; 2; 4; 0; 3; 5; 1; 3; 2; 2; 3; 0; 2; 3; 1; 3; 4; 5; 2; 3; 4; 4; 3; 2; 5; 3; 3; 1}
cuja média é 2,7. Isso significa que a estimativa para θ deverá ser próxima.
Especificação do modelo:
model;
{
for( i in 1 : n )
{ y[i] ~ dpois(theta) }
theta ~ dgammaf(0.001, 0.001)
}
ou por ‘Doodle’, isto é, por gráficos que relacionam as variáveis, as distribuições, os dados,
valores constantes, enfim, todos os componentes do modelo, como nas Figuras 3.1a e 3.1b.
Em qualquer um dos casos, assumir-se-á uma distribuição a priori não-informativa para
θ, Gama (10-3, 10-3), isto é:
θ ~ Gama(0, 001, 0,001) (priori não-informativa, segundo parametrização OpenBUGS)
41 ROSSI, R.M.
Figura 3.1b. Gráfico em Doodle do WinBUGS – priori para o parâmetro.
42 ROSSI, R.M.
Figura 3.2. Checando o modelo.
• Feito isso, é necessário ler o banco de dados (geralmente em forma de listas), o
qual representa o componente da verossimilhança. Abra um arquivo novo em uma janela
específica em ‘File New’ e digite os dados em forma de ‘list’ em seguida selecionando o
‘list’ dos dados como mostra a Figura 3.3 e clicando em ‘load data’, se tudo estiver correto
uma mensagem irá aparecer no rodapé da página: ‘data loaded’;
43 ROSSI, R.M.
Observação. Caso queira, pode optar pela geração de uma ou mais cadeias amostrais:
Digite 1 ou mais valores no espaço ‘num for chains’e só em seguida clique em ‘compile’.
Quando isso é feito, além de verificar as consistências entre os arquivos, o programa gera o nó
‘deviance’, que pode ser monitorado junto com os demais nós.
• Selecione os valores ‘chutes’ iniciais, então clicando em ‘load inits’ e, em
seguida, em ‘gen inits’ (se necessário), para cada cadeia gerada, um valor inicial deverá ser
dado;
44 ROSSI, R.M.
Figura 3.5. Gerando o burn.
45 ROSSI, R.M.
Figura 3.8. Estatísticas a posteriori para o parâmetro de interesse.
46 ROSSI, R.M.
• ‘trace’ e ‘history’: espera-se que a linha seja aleatória e não deve ficar fixa em
nenhuma região ao longo das iterações (as alternativas são aumentar o número
de iterações e/ou modificar os valores iniciais);
• ‘quantiles’: espera-se que os intervalos de credibilidade sejam de baixa
amplitude.
A opção ‘coda’ retorna os valores gerados nas cadeias e será útil para uma análise de
convergência mais criteriosa.
47 ROSSI, R.M.
“Arquivo Mudar Dir...” clicar no ícone “Browse” e indicar o caminho onde estão os
arquivos das saídas do WinBUGS/OpenBugs, explicadas no Passo 1. O comando no R é
por meio de setwd;
setwd("C:\\ ... \\pasta de trabalho”)
Passo 3: (sugestão) remover todos os objetos por meio do comando;
rm(list=ls(all=TRUE))
Passo 4: chamar a livraria coda e em seguida o menu de opções
library(coda)
Observação:para instalar o pacote, no menu do R, observe os seguintes
procedimentos:
“Pacotes Instalar pacotes (escolha uma base, por exemplo, Brasil (PR)
) coda
codamenu()
Seguir as instruções de diálogo no R.
Uma alternativa mais simples é utilizar os seguintes comandos no R:
amostra = read.coda("cadeia.out.txt","cadeia.ind.txt")
amostra = mcmc.list(amostra)
geweke.diag(amostra)
heidel.diag(amostra)
gelman.diag(amostras)# são necessárias no mínimo duas cadeias distintas.
Este diagnóstico inicial é sugerido pois utiliza a cadeia inicial como amostra (cadeia)
piloto de tamanho de no mínimo 3.746, para poder fazer sua pré-inferência e assim retornar o
N, o número de iterações, K, o tamanho do salto ou lag necessário para que ocorra
convergência caso isso não tenha ocorrido na amostra piloto:
raftery.diag(amostra)
Neste momeno, alguns testes gráficos, como, por exemplo, de autocorrelação e
lag.plot, são interessantes.
lag.plot(amostra,5)
48 ROSSI, R.M.
Para verificar a autocorrelação entre os valores gerados, podemos utilizar o seguinte
comando:
amostra2 = amostra[[1]]
acf(amostra2,ylab='Autocorrelação',main='')
A rotina a seguir tem como objetivo, tomar uma cadeia ‘bruta’, fazer um descarte inicial
(burn) e retirar uma amostra em saltos (lags) de interesse.
49 ROSSI, R.M.
3.2.3.4. Critério Gelman e Rubin
Este critério utiliza a análise de variância entre e dentre duas ou mais cadeias
(requisito).
hist(cadeia.final,xlab='Parâmetro',ylab='Frequência',main='',col=8)
abline(v=quantile(cadeia.final,0.5)) # Mediana
summary(cadeia.final)
quantile(cadeia.final,c(0.025,0.975)) # Intervalo de Credibilidade
100 200 300 400 500
Freqüência
Parâmetro
50 ROSSI, R.M.
3.3.Aplicações
Aplicação 3.3.1. Binomial conjugada com a Beta - Estimação da proporção
(continuação da Aplicação 2.6.1).
Suposições do modelo
Yi ~ Bernoulli(θ)
n
t = ∑ yi ~ Binomial(n,θ), com n = 980 e θ desconhecido.
i =1
model;
{
t ~ dbin(theta,n)
theta ~ dbeta(1,1)
}
Dados:
list(t=437,n=980)
Chute inicial:
list(theta=0.5)
51 ROSSI, R.M.
Resultados do WinBUGS:
node mean sd MC error 2.5% median 97.5% start sample
theta 0.446 0.015950.0001444 0.4146 0.4458 0.4778 1000 10001
Observações:
1. a primeira coluna mostra a média a priori;
2. a segunda coluna é similar ao tamanho da amostra quando comparado com a
F.V. (Função de Verossimilhança) binomial;
3. o intervalo de 95% de credibilidade para θ confirma que existe influência da
predisposição genética na determinação do sexo do animal, pois E[θ] ∉
ICr(θ;95%).
52 ROSSI, R.M.
Aplicação 3.3.2. Poisson conjugada com a Gama - Estimação da taxa (Continuação da
aplicação 2.6.2).
Foi assumido que o número Y de observações segue uma distribuição de Poisson:
Yi ~ Poisson(θ)
em que θ>0 representa a média ou taxa. Os dados Y representam o número de ovos postos
por dez aves em tratamento com ração especial durante um período de um mês, experimento
cujo interesse é estimar θ: a média de produção:
Y: {26; 25; 24; 27; 32; 26; 19; 32; 22; 23}
Uma distribuição a priori Gama conjugada à distribuição de Poisson é adotada para θ:
α
θ ~ Gama(α,β) (não-informativa comα = 10-3 e β = 10-3, já que E (θ ) = e
β
α
Var (θ ) = , segundo parametrização OpenBUGS).
β2
A distribuição a posteriori de θ segue uma distribuição Gama com os seguintes
parâmetros:
n
θ|y ~ Gama(α+t, β+n) onde t = ∑y .
i =1
i
theta
y[i]
for(i IN 1 : n)
53 ROSSI, R.M.
model;
{
for( i in 1 : n )
{
y[i] ~ dpois(theta)
}
theta ~ dgamma(0.001, 0.001)
}
Dados:
list(y=c(26,25,24,27,32,26,19,32,22,23),n=10)
Chutes iniciais:
list(theta=25)
Resultados:
Utilizando-se um ‘burn’ de 1.000 atualizações, seguidas por uma geração de 10.000
atualizações, resultou-separa o parâmetro:
node mean sd MC error p2.5% median p97.5% start sample
theta 25.6 1.62 0.01466 22.5 25.55 28.88 1 11000
54 ROSSI, R.M.
Aplicação 3.3.3. Estimação da produção de abelhas rainha.
(Colaboração de Fabiana M. C. Maia – Pós-graduação em Zootecnia/UEM)
A produção de mel pode ser incrementada com a troca anual de rainhas. A produção de
rainhas Apis mellifera africanizadas é uma técnica realizada por centros de pesquisa e/ou por
apiários com grau de profissionalismo avançado. Além do domínio da técnica de transferência
de larvas, de manejo das minirrecrias e conhecimentos em genética, deve existir programação
para absorver todas as rainhas produzidas, pois o custo de uma rainha virgem é de
aproximadamente R$ 15,00 (maio/2008). Um apicultor iniciante, com dez colônias para
produzir mel, ao procurar o Centro de Produção de Rainhas da FEI/UEM, para obter as
informações iniciais sobre produção de suas próprias rainhas, pergunta quantas rainhas podem
ser produzidas com uma minirrecria por mês em um ano.
Tabela 3.2. Evolução mensal do número de rainhas por minirrecria.
Mês jan Fev mar abr mai jun jul ago set out nov dez
Rainha/ 50 46 33 12 18 3 7 15 54 56 47 35
Minirecria
Suposições do modelo:
Yi ~ Poisson(θ)
Priori:
θ ~ Gama(10-3,10-3)
model;
{
for( i in 1:n )
{
y[i] ~ dpois(theta)
}
theta ~ dgamma(alpha,beta)
}
Dados:
list(n=12,y=c(50,46,33,12,18,3,7,15,54,56,47,35),alpha=0.001,beta=0.001)
Chutes iniciais:
list(theta=30)
55 ROSSI, R.M.
Análise de convergência no R após salvar as cadeias geradas no WinBUGS/OpenBugs
por meio do coda.
56 ROSSI, R.M.
name: y[i] type: stochastic density: dnorm
mean mu precision tau lower bound upper bound
sigma tau
y[i] mu
for(i IN 1 : n)
Resultados:
node mean sd MC error 2.5% median 97.5% start sample
sigma 6.177 1.193 0.04107 4.499 6.002 8.799 1 1000
tau 0.0286 0.009397 0.000314 0.0132 0.02778 0.0497 1 1000
mu 21.01 1.458 0.04205 18.07 20.98 23.94 1 1000
57 ROSSI, R.M.
Aplicação 3.3.5. Teste para a comparação de duas médias de populações normais com
variâncias iguais e desconhecidas.
Supõem-se duas amostras independentes Y1 e Y2, distribuídas normalmente, com
mesma precisão, isto é, τ1 = τ2 = τ (indivíduos provenientes de uma mesma população):
Y1 ~ N(µ1 , τ) e Y2 ~ N(µ 2 , τ)
1
σ=
τ
Os dados a seguir referem-se a medidas de ganho de peso (kg) de 30 animais
submetidos a dois tratamentos distintos:
Tabela 3.4. Ganho de peso (kg) em animais submetidos à dieta com Ração e Pastagem.
Ração 135 125 131 119 136 138 139 125 131 134
(Y1) 129 134 126 132 141 131 135 132 139 132
126 135 134 128 130 138 128 127 131 124
Pastagem 137 136 128 130 138 126 136 126 132 139
(Y2) 143 141 135 137 142 139 138 137 133 145
138 131 143 134 132 137 129 140 147 136
Priori:
µ1 ~ N(0, 0,000001)
µ2 ~ N(0, 0,000001)
τ ~ Gama(0,001, 0,001)
Fazendo-se ∆ = µ1 − µ2, a hipótese nula a ser testada será:
H0: ∆ = 0 (as médias não diferem).
O gráfico ‘Doodle’ e o respectivo ‘Write Code’, referentes ao modelo no
WinBUGS/OpenBugs, são:
58 ROSSI, R.M.
name: delta type: logical link: identity
value: mu1-mu2
sigma
mu1 mu2
delta
model;
{
for( j in 1 : n1 ) { y1[j] ~ dnorm(mu1, tau) }
for( i in 1 : n2 ) { y2[i] ~ dnorm(mu2, tau) }
mu1 ~ dnorm(0, 0.000001)
mu2 ~ dnorm(0, 0.000001)
tau ~ dgamma(0.001, 0.001)
sigma <- 1 / sqrt(tau)
delta <- mu1 – mu2
}
Dados:
list(m=30,n=30,
y1=c(135,125,131,119,136,138,139,125,131,134,129,134,126,132,141,131,135,1
32,139,132,126,135,134,128,130,138,128,127,131,124),
y2=c(137,136,128,130,138,126,136,126,132,139,143,141,135,137,142,139,138,1
37,133,145,138,131,143,134,132,137,129,140,147,136))
Chutes iniciais:
list(mu1=132, mu136=0, tau=1)
59 ROSSI, R.M.
Resultados:
node mean sd MCerror 2.5% median 97.5% start sample
delta -4.668 1.377 0.02736 -7.258 -4.663 -1.982 1000 1800
mu1 131.5 0.9852 0.01824 129.6 131.5 133.4 1000 1800
mu2 136.2 0.9764 0.02576 134.2 136.2 138.0 1000 1800
tau 0.03622 0.006825 0.0002 0.0245 0.0356 0.0507 1000 1800
sigma 5.318 0.503 0.007822 4.443 5.277 6.385 1000 1800
Como o Intervalo de Credibilidade de 95% para delta foi (-7.258, -1.982), exclui-se sem
qualquer margem de dúvidas o valor 0 (zero), então há forte evidência contra a igualdade de
médias, logo, afirma-se que as médias são distintas sob o ponto de vista Bayesiano. Conclui-
se que animais tratados com Pastagem têm ganho médio de peso em torno de 5 kg a mais que
animais tratados com Ração.
60 ROSSI, R.M.
Aplicação 3.3.6. Comparação da produção de geleia real entre grupos de rainhas.
(Colaboração de Patrícia Faquinello, aluna de Pós-graduação em Zootecnia/UEM)
Na apicultura a rainha é responsável pelas características genéticas passadas aos
indivíduos da colônia e, com isso, pela produção de mel, própolis, geleia real e pólen.
Diversos trabalhos relacionam a superioridade da rainha com suas características
morfométricas como: peso, número de ovaríolos, tamanho da espermateca, etc.
Rainhas maiores, ao nascer, possuem um aparelho reprodutivo com maior capacidade
de armazenar espermatozoides, maior número de ovaríolos, ou seja, maior capacidade
reprodutiva, e, consequentemente, acredita-se numa produtividade maior da colônia.
Sendo assim, dois grupos de rainhas recém-emergidas, leves e pesadas, sendo o grupo
leve com peso entre 180 e 213 mg e o grupo pesado entre 215 e 247 mg, foram avaliadas
quanto à produção de geleia real por colônia, com objetivo de observar se há diferenças de
produção entre os dois grupos, supondo-se que as rainhas são provenientes de uma única
população: σ21 = σ22 = σ2.
Chutes iniciais:
list(mu1=6,mu2=5,tau=1)
Resultados:
node mean sd MC error 2.5% median 97.5% start sample
delta 0.6948 0.625 0.02265 -0.5468 0.6912 1.949 1000 1200
mu1 4.987 0.456 0.009549 4.066 4.995 5.867 1000 1200
mu2 4.292 0.4354 0.0173 3.422 4.294 5.136 1000 1200
sigma 1.62 0.2334 0.005988 1.243 1.598 2.134 1000 1200
tau 0.4046 0.1139 0.002979 0.2196 0.3919 0.6501 1000 1200
61 ROSSI, R.M.
Como o intervalo de 95% de credibilidade para delta foi de (-0,5468, 1,949), que
contém o valor nulo (zero), então não há evidências de diferença entre as médias dos dois
grupos. Portanto, o uso de rainhas leves ou pesadas, com pesos analisados entre 180 e 247 mg,
não provocou significantes diferenças na produção de geleia real.
Chutes iniciais:
list(mu1=2000,mu2=2100,tau=1)
Resultados:
node mean sd MC error 2.5% median 97.5% start sample
delta 12.49 50.76 1.188 -98.26 13.25 109.5 1000 2000
mu1 2203.0 35.84 0.8013 2131.0 2203.0 2273.0 1000 2000
mu2 2190.0 35.39 0.8424 2119.0 2189.0 2263.0 1000 2000
sigma 67.6 24.14 0.4718 37.25 62.28 130.0 1000 2000
tau 0.00029 0.00017 0.000004 0.0006 0.00026 0.00073 1000 2000
62 ROSSI, R.M.
Aplicação 3.3.8. Teste para a comparação de duas médias de populações normais com
variâncias distintas e desconhecidas.
Paulino et al. (2003, p.206) apresentam dados sobre medidas de altura nasal (em mm)
de crânios de 30 esqueletos de homens egípcios de cada um de dois períodos: Período Pré-
dinástico (4000 A.C) e Período Romano (150 D.C). Desejam-se comparar as médias das
alturas nasais dos dois gruposem nível de 10% de significância. Os dados foram:
63 ROSSI, R.M.
name: delta type: logical link: identity
value: mu1-mu2
sigma1 sigma2
mu1 mu2
delta
model;
{
for( i in 1 : n1 ) { y1[i] ~ dnorm(mu1,tau1) }
for( j in 1 : n2 ) { y2[j] ~ dnorm(mu2,tau2) }
mu1 ~ dnorm( 0, 0.000001)
mu2 ~ dnorm( 0, 0.000001)
delta <-mu1-mu2
tau1 ~ dgamma(0.001, 0.001)
tau2 ~ dgamma(0.001, 0.001)
sigma1 <- 1 / sqrt(tau1)
sigma2 <- 1 / sqrt(tau2)
}
Chutes iniciais:
list(mu1=0,mu2=0,tau1=1,tau2=1)
64 ROSSI, R.M.
Resultados:
node mean sd MC error 5% 95% startsample
delta -0.834 0.8572 0.01704 -2.247 0.5505 1000 1800
mu1 50.53 0.6134 0.01136 49.55 51.59 1000 1800
mu2 51.37 0.6079 0.01604 50.35 52.37 1000 1800
Como o intervalo de credibilidade 90% para delta (-2,247, 0,5505) contém o valor nulo
(zero), então demonstra bem que não há evidências de diferença entre as médias.
Dados:
list(n1=6, n2=6, y1=c(2,0,4,14,10,2), y2=c(0,1,1,6,2,0))
Chutes iniciais:
list(mu1=mean(y1),m2=mean(y2))
65 ROSSI, R.M.
Resultados:
node mean sd MC error 2.5% median 97.5%
delta 3.649 1.085 0.01242 1.604 3.597 5.12
mu1 5.32 0.946 0.01042 3.644 5.254 7.34
mu2 1.672 0.5358 0.005432 0.7982 1.61 2.872
Como o intervalo com 95% de credibilidade para delta é (1,604, 5,12), então conclui-se
pela diferença entre as médias. A suplementação com 9 mg de selênio/kg de sal mineral pode
ter gerado algum grau de toxidêz, prejudicando, assim, a quantidade de embriões produzidos
por cabras Saanen, o que ocasionou a rejeição da hipótese de igualdade de tratamentos.
Observação: Realizando testes frequentistas no R, os resultados dos testes
paramétricos e não-paramétricos foram os seguintes:
y1 = c(2, 0, 4, 14, 10, 2)
y2 = c(0, 1, 1, 6, 2, 0)
Paramétrico: t-Student
t.test(y1,y2)
# p-valor = 0,1746
Não-paramétrico: Mann-Whitney
wilcox.test(y1,y2, paried=FALSE)
# p-valor = 0,1667
Análise Paramétria: Modelos lineares generalizados
trat1 = rep(1,length(y1))
trat2 = rep(2,length(y2))
trat = c(trat1,trat2)
trat = factor(trat)
prod = c(y1,y2)
res = glm(prod ~ trat, family=poisson)
summary(res)
# p-valor = 0,00132*
66 ROSSI, R.M.
Aplicação 3.3.10. Análise de variância – Procedimento I.
Com o objetivo de se comparar três tratamentos (rações) para se observar o ganho de
peso em bovinos em certo período, aplicou-se cada um daqueles a um grupo de animais
selecionados aleatoriamente em um rebanho homogêneo. Os ganhos de pesos (em kg) foram
anotados e são apresentados a seguir.
Tratamento 1: {78,9; 72,3; 81,7; 85,7};
Tratamento 2: {63,5; 74,1; 75,5; 80,8; 71,3; 74,5};
Tratamento 3: {79,1; 90,3; 85,6; 81,4; 95,3}.
Suposições para o modelo:
Yi ~ N(µi,τ)
Distribuições a priori:
µi ~ N(0, 10-6)
τ ~ Gama(10-3, 10-3)
∆1 = µ1 - µ2
∆2 = µ1 - µ3
∆3 = µ2 - µ3
67 ROSSI, R.M.
name: delta2 type: logical link: identity
value: mu1-mu3
tau sigma
model;
{
for( i in 1 : n1 ) { y1[i] ~ dnorm(mu1,tau) }
for( j in 1 : n2 ) { y2[j] ~ dnorm(mu2,tau) }
for( k in 1 : n3 ) { y3[k] ~ dnorm(mu3,tau) }
mu1 ~ dnorm( 0, 0.000001)
mu2 ~ dnorm( 0, 0.000001)
mu3 ~ dnorm( 0, 0.000001)
tau ~ dgamma(0.001,0.001)
sigma <- 1 / sqrt(tau)
delta1 <-mu1 - mu2
delta2 <- mu1 - mu3
delta3 <- mu2 - mu3
}
Dados:
list(n1=4,n2=6,n3=5,
y1=c(78.9,72.3,81.7,85.7),
y2=c(63.5,74.1,75.5,80.8,71.3,74.5),
y3=c(79.1,90.3,85.6,81.4,95.3))
Chutes iniciais:
list(mu1=0, mu2=0, mu3=0, tau=1)
68 ROSSI, R.M.
Resultados:
Baseados na distribuição a posteriori dos ∆k, os resultados foram:
node mean sd MC error 2.5% median 97.5% start sample
delta1 6.357 4.215 0.1125 -2.121 6.42 14.62 1000 1800
delta2 -6.934 4.291 0.1038 -15.58 -6.897 1.483 1000 1800
delta3 -13.29 4.074 0.1429 -21.35 -13.41 -5.146 1000 1800
mu1 79.53 3.179 0.07061 73.37 79.51 85.77 1000 1800
mu2 73.17 2.711 0.07226 67.65 73.16 78.66 1000 1800
mu3 86.46 3.025 0.09307 80.5 86.52 92.73 1000 1800
tau 0.028 0.0115 0.00025 0.0098 0.0263 0.055 1000 1800
sigma 6.425 1.459 0.018 4.295 6.179 9.877 1000 1800
ANOVA Frequentista
69 ROSSI, R.M.
Médias: T1: 79,65; T2: 73,28 e T3: 86,34
Teste Tukey:
T1 T2 T3
T1 - 0,265967 0,259040
T2 0,265967 - 0,009677 *significativo
T3 0,259040 0,009677 -
70 ROSSI, R.M.
Para realizar a análise de variância poderemos utilizar outro procedimento, supondo o
seguinte modelo:
Suposições para o modelo com k-níveis de tratamento:
Yik ~ N(µik,τ)
Distribuições a priori:
µ0 ~ N(0, 10-6)
τ ~ Gama(10-3, 10-3)
Modelo:
model;
{
# verossimilhança
for( i in 1 : n )
{
y[i] ~ dnorm(mu[i], tau)
mu[i] <- mu0 + alpha[ trat[i] ]
}
# contraste STZ (sum-to-zero)
alpha[1] <- - sum(alpha[2:ntrat])
# priori
mu0 ~ dnorm( 0, 0.000001 )
for (i in 2:ntrat) { alpha[i] ~ dnorm(0, 0.000001) }
tau ~ dgamma(0.001, 0.001)
sigma <- 1 / sqrt(tau)
}
Dados:
list(n = 10, ntrat = 3,
y=c(0.8779, 0.8547, 0.8386, 0.9199, 0.8887, 0.8580, 0.8984, 0.9604, 0.8873,0.9413,
0.9059, 0.8383, 0.8710, 0.9066, 0.9199, 0.8669, 0.9150, 0.9495,0.9194, 0.9542,
0.9058, 0.8384, 0.8709, 0.9069, 0.9196, 0.8668, 0.9150, 0.9605, 0.9494, 0.9542),
trat=c(1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3))
Chutes iniciais:
list(mu0=1, alpha=c(NA, 0, 0), tau=1)
71 ROSSI, R.M.
Resultados (Procedimento I):
delta1 = mi - mm = mu1 - mu2
delta2 = mi - mf = mu1 - mu3
delta3 = mm - mf = mu2 - mu3
node mean sd 2.5% median 97.5%
mi 0.8925 0.0149 0.8624 0.8925 0.9221
mm 0.9045 0.01402 0.876 0.9045 0.9331
mf 0.9054 0.01458 0.8762 0.9054 0.9349
delta1 -0.01201 0.02049 -0,05307 -0.01206 0.02799
delta2 -0.01296 0.02073 -0.05384 -0.01319 0.02862
delta3 -0.000467 0.02018 -0.04112 -0.001076 0.0386
sigma 0.0447 0.01228 0.0283 0.0423 0.0739
[1]
0.0 [2]
[3]
72 ROSSI, R.M.
A Figura 3.18b pode ser obtida após o procedimento no WinBUGS, no menu de opções
em “Inference→ Compare”, digitando em node: ‘alpha’ e, em seguida, em qualquer um dos
dois tipos gráficos: Box plot e/ou caterpilar.
model;
{
for( i in 1 : n )
{
y1[i] ~ dnorm(m1,tau)
y2[i] ~ dnorm(m2,tau)
y3[i] ~ dnorm(m3,tau)
y4[i] ~ dnorm(m4,tau)
y5[i] ~ dnorm(m5,tau)
}
m1 ~ dnorm(0, 0.000001)
m2 ~ dnorm(0, 0.000001)
m3 ~ dnorm(0, 0.000001)
m4 ~ dnorm(0, 0.000001)
m5 ~ dnorm(0, 0.000001)
tau ~ dgamma(0.001, 0.001)
sigma <- 1 / sqrt(tau)
73 ROSSI, R.M.
delta12 <- m1-m2
delta13 <- m1-m3
delta14 <- m1-m4
delta15 <- m1-m5
delta23 <- m2-m3
delta24 <- m2-m4
delta25 <- m2-m5
delta34 <- m3-m4
delta35 <- m3-m5
delta45 <- m4-m5
}
Dados:
list(n=6,
y1=c(0.7229,0.7037,0.6385,0.6007,0.7659,0.5609),
y2=c(0.6558,0.7306,0.6261,0.7667,0.7433,0.5009),
y3=c(0.6419,0.6060,0.6983,0.7211,0.7402,0.4529),
y4=c(0.5190,0.6884,0.6433,0.6891,0.6137,0.4007),
y5=c(0.5974,0.6139,0.6374,0.7713,0.6789,0.5438))
Chutes iniciais:
list(m1=0, m2=0, m3=0, m4=0, m5=0, tau=1)
Resultados:
node mean sd MC error2.5% median 97.5% start sample
delta12 -0.004132 0.05707 0.001855 -0.1144 -0.004584 0.1125 1000 10000
delta13 0.02317 0.05775 0.001864 -0.09423 0.0224 0.1425 1000 10000
delta14 0.07514 0.0581 0.001654 -0.03991 0.07552 0.1935 1000 10000
delta15 0.02501 0.05684 0.001771 -0.08914 0.02391 0.1391 1000 10000
delta23 0.0273 0.0564 0.00153 -0.08072 0.02739 0.1408 1000 10000
delta24 0.07927 0.05704 0.002019 -0.03266 0.0802 0.1943 1000 10000
delta25 0.02914 0.05746 0.001656 -0.07973 0.02754 0.145 1000 10000
delta34 0.05197 0.05676 0.001677 -0.05766 0.05097 0.161 1000 10000
delta35 0.001844 0.05948 0.002219 -0.1146 0.002924 0.113 1000 10000
delta45 -0.05012 0.05973 0.001973 -0.1707 -0.04847 0.06383 1000 10000
m1 0.6647 0.03994 0.001268 0.5897 0.6643 0.7478 1000 10000
m2 0.6689 0.04005 0.00118 0.591 0.6691 0.7459 1000 10000
m3 0.6416 0.04053 0.001407 0.5651 0.6419 0.7225 1000 10000
m4 0.5896 0.04127 0.001261 0.5045 0.5898 0.6724 1000 10000
m5 0.6397 0.04093 0.00126 0.5576 0.6412 0.7196 1000 10000
tau 107.0 30.85 1.115 54.03 104.1 179.4 1000 10000
sigma 0.09985 0.0153 0.0005 0.07486 0.09805 0.136 1000 10000
Não foram encontradas diferenças estatísticas entre as médias de ganho diário de peso
nos níveis considerados.
74 ROSSI, R.M.
Aplicação 3.3.13. Regressão linear simples - Exemplo I.
O problema aqui é simplesmente o de estimar os parâmetros de um modelo linear
simples com erro normal:
Yi ~ N(µi, τ), Yi : representa o ganho de peso (kg);
beta0
mu[i] beta1
sigma
tau y[i]
for(i IN 1 : n)
75 ROSSI, R.M.
model;
{
for (i in 1 : n)
{
y[i] ~ dnorm(mu[i],tau)
mu[i] <- beta0 + beta1*x[i]
}
beta0 ~ dnorm(0, 0.000001)
beta1 ~ dnorm(0, 0.000001)
tau ~ dgamma(0.001, 0.001)
sigma <- 1/sqrt(tau)
sigma2 <- pow(sigma,2)
sy2 <- pow(sd(y[]),2)
R2B <- 1 - sigma2/sy2
y.pred <- beta0 + beta1*X0 # predição
}
σˆ e2
Bayesiano) se dá pela equação RB 2 = 1 − 2
, onde RB 2 ≈ 1 é indicativo de bom ajuste
s y
do modelo.
Os dados observados foram:
Dados:
list(n = 30,
y = c( 2.75,10.0,5.5,7.0, 5.5,2.75,7.0 ,8.25,5.75,3.0 ,4.0 ,4.25,9.25,5.5,3.5,2.5,7.25,
3.0 ,5.5,5.5,3.0 ,3.5,5.0 ,9.0,3.5,2.25,5.0 ,2.0 ,2.0 ,2.25),
x = c(100,100,100,100,100,100,100,100,120,120,120,120,120,120,120,120,140,140,
140,140,140,140,140,140,160,160,160,160,160,160),
X0=130)
Chutes iniciais:
list(beta0=10, beta1=0, tau=1)
Resultados:
Após uma queima de 1.000, seguiu por 10.000 atualizações adicionais que resultaram
nas seguintes estimativas dos parâmetros:
76 ROSSI, R.M.
node mean sd MC error 2.5% median 97.5%
beta0 10.500 2.4080 0.0256 5.7170 10.50 15.20
beta1 -0.0443 0.0185 0.0001978 -0.0809 -0.0444 -0.0074 *
sigma 2.1800 0.3064 0.0030510 1.6770 2.1470 2.8830
tau 0.2226 0.06008 0.0005936 0.1203 0.2169 0.3558
R2B 0.08482** 0.2676 0.003039 -0.5765 0.1288 0.4686ns
sy2 5.295 0.0 0.0 5.295 5.295 5.295
y.pred 4.7490 0.4078 0.003087 3.9450 4.74400 5.5450
77 ROSSI, R.M.
Aplicação 3.3.14. Regressão linear simples – Exemplo II.
Os dados para este exemplo são adaptados de Berry (1996) e referem-se à medição de
radiação de fundo, através de contagens Y num detector de Geiger (por minutos), em 39
locais com altitudes X (metros) diferenciadas (PAULINO et al., 2003).
Dados:
list(n=39,y=c(11,12.7,11.6,12.8,11.8,11.5,11.1,13.6,12.5,13.9,15.7,17.8,17.2,14.
4,15,13.8,15.8,12.4,13.9,18,14.9,16.8,17.3,17.9,18.4,19.6,20.1,16.6,19.3,22,19.8,
27.8,29,20.4,25,26.8,22.7,24.9,26),
x=c(213.4,426.8,487.8,518.3,579.3,640.2,701.2,731.7,884.1,884.1,1097.6,1097.6
,1128,1158.5,1158.5,1219.5,1250,1311,1311,1463.4,1524.4,1554.9,1554.9,1554.
9,1554.9,1554.9,1554.9,1646.3,1646.3,1890.2,1951.2,2103.7,2103.7,2164.6,2256
.1,2256.1,2530.5,3231.7,3231.7))
Chutes iniciais:
list(beta0=8, beta1=1, tau=1)
Resultados:
Utilizando-se o mesmo modelo apresentado na aplicação anterior, obtiveram-se os
seguintes resultados:
node mean sd MC error 2.5% median 97.5%
beta0 8.551 0.9272 0.009333 6.715 8.552 10.38
beta1 0.0062 0.0005817 0.0000058 0.00505 0.0062 0.00737
sigma 2.51 0.3032 0.002985 2.003 2.482 3.19
tau 0.1655 0.03886 0.0003659 0.09829 0.1624 0.2493
78 ROSSI, R.M.
Caso se deseje fazer uma predição pontual para um X0 = 2.000 m, por exemplo, pode-
se obtê-la de modo direto:
__
φ = E Y 0 | β0 , β1 , σ 2 = 8,55 + 0,0062(2000) = 20,95 .
Entretanto a obtenção do Intervalo de Credibilidade para esta predição só será
possível por meio de uma linha de programação a mais no modelo *.bug da seguinte forma:
y.pred <- beta0 + beta1*X0
assim a quantidade y.pred será uma função dos parâmetros a ser solicitada na saída de
resultados. Portanto uma predição da quantidade de radiação de fundo à 2.000 m de distância
será de 20,95 com ICr(95%) de (19,93; 21,98).
79 ROSSI, R.M.
DIC – Critério de Informação da deviance Bayesiana
Modelos podem ser comparados assim como a seleção de (co)variáveis nos modelos pode
ser feita por meio do Deviance Information Criterion (DIC), proposto por Spiegelhalter et al.
(2002), que utiliza, como medida de qualidade de ajuste, a esperança a posteriori do logaritmo
da distribuição condicional dos dados.
D(θ ) = - 2log(p( y | θ ))
DIC= D + pD = D( θ) + 2pD
Segundo os autores, é uma medida de complexidade do modelo. Modelos com menores
valores de DIC podem ser considerados mais adequados, pois apresentam ajuste ponderado pelo
grau de complexidade. Segundo os autores, o seguinte critério pode ser adotado:
se D < 5 : não-significativo;
se 5 ≤ D ≤ 10 : significativo;
80 ROSSI, R.M.
Aplicação 3.3.15. Regressão linear e quadrática - Peso corporal em codorna de postura.
(Colaboração de Ana P. S. Ton, aluna de Pós-graduação em Zootecnia/UEM)
Foi conduzido um experimento na Fazenda Experimental de Iguatemi pertencente à
Universidade Estadual de Maringá (FEI/UEM), com o objetivo de se estimar a exigência de
proteína bruta para o máximo peso corporal (g) de codornas de postura (Coturnix coturnix
japonica) em crescimento (1 a 28 dias). Foram utilizadas 750 codornas de postura de um dia
de idade não-sexadas, alimentadas com rações quem continham 20, 22, 24, 26 e 28% de
proteína bruta. O delineamento experimental utilizado foi inteiramente casualizado em cinco
níveis de proteína bruta com três repetições e 50 aves por unidade experimental.
Foram analisadas por meio de regressões Linear e Quadrática, os valores médios dos
pesos corporais (Y) dentro dos níveis de proteína bruta (PB).
Tabela 3.12. Peso (g) corporal (Y) por nível (%) de proteína bruta (PB).
PB Y
20 95,15 90,68 90,43
22 95,10 94,34 93,12
24 92,76 98,76 96,69
26 96,41 94,45 96,04
28 94,46 95,91 97,10
Modelo Linear
model;
{
for (i in 1 : n)
{
y[i] ~ dnorm(mu[i], tau)
mu[i] <- beta0 + beta1* x[i]
}
beta0 ~ dnorm(0, 0.00001)
beta1 ~ dnorm(0, 0.00001)
tau ~ dgamma(0.001, 0.001)
sigma <- 1/sqrt( tau)
}
Modelo Quadrático
model;
{
for (i in 1 : n)
{
y[i] ~ dnorm(mu[i], tau)
mu[i] <- beta0 + beta1* x[i] + beta2*pow( x[i],2 )
}
beta0 ~ dnorm(0, 0.00001)
beta1 ~ dnorm(0, 0.00001)
beta2 ~ dnorm(0, 0.00001)
81 ROSSI, R.M.
tau ~ dgamma(0.001, 0.001)
sigma <- 1/sqrt( tau)
}
Dados:
list(n=15,
y=c(95.14,90.68,90.43,95.10,94.38,93.12,92.76,98.76,96.69,96.41,94.45,96.0,
94.46,95.91,97.10),x=c(20,20,20,22,22,22,24,24,24,26,26,26,28,28,28))
Chutes iniciais:
list(beta0=5, beta1=0, tau=1)
list(beta0=5, beta1=0, beta2=1, tau=1)
Resultados:
node mean sd MC error 2.5% median 97.5% start sample
beta0 84.23 4.6410 0.1255 75.01 84.24 93.97 1000 10000
beta1 0.4386 0.1926 0.004958 0.04536 0.4359 0.8173 1000 10000*
sigma 2.067 0.4371 0.01633 1.423 2.004 3.219 1000 10000
tau 0.2635 0.1015 0.003738 0.1007 0.2494 0.4965 1000 10000
* significativo ao nível de 5%
DIC-Linear
Dbar Dhat pD DIC
y 63.850 60.691 3.159 67.009
DIC-Quadrático
Dbar Dhat pD DIC
y 62.519 58.220 4.299 66.819
A diferença entre o DIC quadrático e linear (0,19) indica que os dados não apresentam
efeito quadrático.
Houve aumento linear para o peso corporal de codornas de postura aos 28 dias de idade
à medida que níveis de proteína bruta na ração também aumentavam, de acordo com a
equação de regressão estimada: ŷ = 84,23 + 0,4386 PB .
82 ROSSI, R.M.
Aplicação 3.3.16. Regressão linear múltipla.
Em muitas situações estamos interessados em estudar um modelos linear com k
variáveis regressoras:
( )
Yi = β 0 + β1 X 1 + β 2 X 2 + ... + β k X k + ε i , ε i ~ N 0, σ e2 e analogamente ao modelo linear
simples, tem-se:
(
Yi ~ N µi , σ e2 )
µi = β 0 + β1 X 1 + β 2 X 2 + ... + β k X k para i = 1, 2, ...., n.
Birkes e Dodge (1993, Apud WinBUGS Examples) aplicaram a regressão linear
múltipla em dados de perda (Y) de empilhamento de materiais de Brownlee (1965). Foram
observadas 21 respostas diárias de perda y e, como covariáveis, a quantia de amônia solta no
fluxo de ar (X1), temperatura (ºC) (X2) e concentração (%) de ácido (X3).
Parte dos dados é mostrada abaixo:
Tabela 3.14. Perda de empilhamento de materiais, por fluxo de ar, temperatura e acidez.
Dia Perda (Y) Fluxo de ar (X1) Temperatura (X2) Acidez (X3)
1 42 80 27 89
2 34 80 27 88
... ... ... ... ...
21 15 70 20 91
com
µi = β0 + β1X1i + β2X2i + β3X3i
83 ROSSI, R.M.
name: mu[i] type: logical link: identity
value: beta0+beta[1]*x[i,1]+beta[2]*x[i,2]+beta[3]*x[i,3]
beta0
beta[j]
mu[i] x[i,j]
tau
for(j IN 1 : p)
sigma y[i]
for(i IN 1 : n)
model;
{
for( i in 1 : n )
{
y[i] ~ dnorm(mu[i],tau)
mu[i] <- beta0 + beta[1] * x[i , 1] + beta[2] * x[i , 2] + beta[3] * x[i , 3]
}
beta0 ~ dnorm(0, 0.000001)
for( j in 1 : p )
{ beta[j] ~ dnorm(0,0.000001) }
tau ~ dgamma(0.001, 0.001)
sigma <- 1 / sqrt(tau)
}
Dados:
list(p = 3, n = 21,
y = c(42, 37, 37, 28, 18, 18, 19, 20, 15, 14, 14, 13, 11, 12, 8, 7, 8, 8, 9, 15, 15),
x = structure(.Data = c(80, 27, 89, 80, 27, 88, 75, 25, 90, 62, 24, 87, 62, 22, 87,
62, 23, 87, 62, 24, 93, 62, 24, 93, 58, 23, 87, 58, 18, 80, 58, 18, 89, 58, 17, 88, 58,
18, 82, 58, 19, 93, 50, 18, 89, 50, 18, 86, 50, 19, 72, 50, 19, 79, 50, 20, 80, 56, 20,
82, 70, 20, 91), .Dim = c(21, 3)))
Chutes iniciais:
list(beta0=10, beta=c(0,0, 0), tau=1)
84 ROSSI, R.M.
Resultados:
Foram realizadas 10.000 iterações e um burn de 1.000.
node mean sd MCerror 2.5% median 97.5%
beta0 15.20 6.053 0.055 3.12 15.23 27.13
beta[1] 0.30 0.398 0.007 -0.48 0.30 1.11
beta[2] 0.39 0.685 0.014 -0.98 0.40 1.74
beta[3] -0.73 0.474 0.008 -1.66 -0.73 0.22
sigma 10.17 1.872 0.009 7.29 9.91 14.56
tau 0.01 0.003 0.001 0.01 0.01 0.02
Mc = lm(y ~ x1+x2+x3)
summary(Mc)
Outra forma de se verificar quais variáveis são significativas é utilizando-se o DIC, por
meio do procedimento stepwise, isto é, incluindo-se ou excluindo-se variáveis no modelo.
Este procedimento analisa a inclusão, exclusão, ou ambos para a seleção do modelo que
melhor se ajusta aos dados, utilizando o critério de Akaike (AIC) para tal.
require(MASS)
select = stepAIC(Mc)
Mfinal = lm(y ~ x1+x3)
summary(Mfinal)
85 ROSSI, R.M.
Modelo DIC
X1 162,2
X2 162,4
X3 162,2
X1+X2 162,2
X1+X3 159,7*
X2+X3 160,0
X1+X2+X3 161,5
Existem muitas situações nas quais não é desejável, ou mesmo possível, descrever um
fenômeno por meio de um modelo de regressão linear.
Ao invés de se fazer uma descrição puramente empírica do fenômeno em estudo,
pode-se, a partir de suposições importantes sobre o problema, trabalhar no sentido de se obter
uma relação teórica entre as variáveis observáveis de interesse. O problema, diferentemente
do caso linear, é que os parâmetros entram na equação de forma não-linear, assim, logo não se
podem simplesmente aplicar fórmulas para se estimar os parâmetros do modelo.
A vantagem dos modelos não-lineares é a possibilidade de se obter parâmetros que
são, em geral, biologicamente interpretáveis.
Na abordagem Bayesiana, são diversas as vantagens: Estimação precisa e acurada,
sem restrições ou suposições assintóticas, possibilidade de se fazer comparações entre
parâmetros das curvas, por diferentes populações etc.
A seguir serão apresentados alguns modelos não-lineares utilizados nas áreas
zootécnicas e afins.
86 ROSSI, R.M.
Aplicação 3.3.17. Regressão não-linear - Curva de crescimento.
Carlin e Gelfand (1991) apresentaram uma análise Bayesiana não-conjugada
utilizando os dados de Ratkowsky (1983, Apud WinBUGS Examples):
Idade (X) 1 1,5 1,5 1,5 2,5 ... 29,0 31,5
Comprimento (Y) 1,80 1,85 1,87 1,77 2,02 ... 2,27 2,57
sigma y[i]
for(i IN 1 : n)
87 ROSSI, R.M.
model;
{
for( i in 1 : n )
{
y[i] ~ dnorm(mu[i], tau)
mu[i] <- alpha - beta * pow(gamma,x[i])
}
alpha ~ dnorm(0, 0.000001)
beta ~ dnorm(0, 0.000001)
gamma ~ dunif(0, 1)
tau ~ dgamma(0.001, 0.001)
sigma <- 1 / sqrt(tau)
}
Dados:
list(x = c(1.0, 1.5, 1.5, 1.5, 2.5, 4.0, 5.0, 5.0, 7.0,8.0, 8.5, 9.0, 9.5, 9.5, 10.0, 12.0,
12.0, 13.0,13.0, 14.5, 15.5, 15.5, 16.5, 17.0, 22.5, 29.0, 31.5),
y = c(1.80, 1.85, 1.87, 1.77, 2.02, 2.27, 2.15, 2.26, 2.47,2.19, 2.26, 2.40, 2.39,
2.41, 2.50, 2.32, 2.32, 2.43,2.47, 2.56, 2.65, 2.47, 2.64, 2.56, 2.70, 2.72, 2.57),
n = 27)
Resultados:
Ajuste no R:
x = c(1.0, 1.5, 1.5, 1.5, 2.5, 4.0, 5.0, 5.0, 7.0, 8.0, 8.5, 9.0, 9.5, 9.5, 10.0, 12.0,
12.0, 13.0, 13.0, 14.5, 15.5, 15.5, 16.5, 17.0, 22.5, 29.0, 31.5)
y = c(1.80, 1.85, 1.87, 1.77, 2.02, 2.27, 2.15, 2.26, 2.47, 2.19, 2.26, 2.40, 2.39,
2.41, 2.50, 2.32, 2.32, 2.43, 2.47, 2.56, 2.65, 2.47, 2.64, 2.56, 2.70, 2.72, 2.57)
fnl = function(alpha,beta,gamma,x)
{
y = alpha -beta*gamma^x
return(y)
}
x2 = seq(1,30,1.1)
y.est = fnl(alpha=2.653,beta=0.9754,gamma=0.862,x2)
plot(x,y,xlab="Idade (anos)",ylab="Comprimento (m)",bty="n")
lines(x2,y.est,type="l")
88 ROSSI, R.M.
2.6
2.4
Comprimento (m)
2.2
2.0
1.8
0 5 10 15 20 25 30
Idade (anos)
89 ROSSI, R.M.
e α +β x i p
pi = ou log it(pi ) ≡ log i = α + βx i .
1 + e α +β x i 1 − pi
90 ROSSI, R.M.
name: p[i] type: logical link: logit
value: alpha.star + beta * (x[i] - mean(x[]))
alpha beta
alpha.star x[i]
p[i] n[i]
r[i] rhat[i]
for(i IN 1 : N)
model;
{
for( i in 1 : N )
{
r[i] ~ dbin(p[i],n[i])
logit(p[i]) <- alpha.star + beta * (x[i] - mean(x[]))
rhat[i] <- n[i] * p[i]
}
alpha <- alpha.star - beta * mean(x[])
beta ~ dnorm(0, 0.000001)
alpha.star ~ dnorm(0, 0.000001)
}
Dados:
list( x = c(1.6907, 1.7242, 1.7552, 1.7842, 1.8113, 1.8369, 1.8610, 1.8839),
n = c(59, 60, 62, 56, 63, 59, 62, 60),
r = c(6, 13, 18, 28, 52, 53, 61, 60),
N = 8)
Chutes:
list(alpha=0, beta=0) # Modelo inicial
list(alpha.star=0, beta=0) # Modelo proposto
Resultados para o Modelo proposto:
91 ROSSI, R.M.
rhat[1] 3.57 0.959 0.00952 1.991 3.48 5.678 1001 10000
rhat[2] 9.957 1.7 0.01629 6.876 9.879 13.47 1001 10000
rhat[3] 22.51 2.126 0.02071 18.36 22.53 26.71 1001 10000
rhat[4] 33.91 1.777 0.02053 30.38 33.94 37.31 1001 10000
rhat[5] 50.06 1.659 0.02113 46.73 50.09 53.15 1001 10000
rhat[6] 53.22 1.105 0.01409 50.94 53.27 55.22 1001 10000
rhat[7] 59.15 0.7336 0.009167 57.57 59.21 60.40 1001 10000
rhat[8] 58.69 0.4233 0.005176 57.74 58.74 59.36 1001 10000
92 ROSSI, R.M.
Aplicação 3.3.19. Modelo logístico para curva de crescimento.
Yi =
α
1+exp(β-γXi )
( )
+ εi ; 0 <γ< 1; α, β ∈ℜ; ε i ~ N 0, σ e2 .
Modelagem:
α
Yi ~ N ( µi ,τ ) onde µ i = .
1+exp(β-γX i )
A aplicação a seguir consiste em analisar os dados obtidos por Heyes e Brown (1956)
(Apud WinBUGS Examples), os quais se referem a quantidade de água presente em células de
raízes de feijão (Y), obtida em diferentes pontos das raízes (X).
Os dados sugerem que a quantidade de água aumenta à medida que o ponto escolhido
se afasta do caule do feijoeiro, existindo certa tendência à estabilização, isto é, características
de um ajuste de um modelo de crescimento sigmoide.
Tabela 3.14. Quantidade de água em pontos do caule do feijoeiro.
X 0,5 1,5 2,5 3,5 4,5 5,5 6,5 7,5 8,5 9,5 10,5 11,5 12,5 13,5 14,5
Y 1,3 1,3 1,9 3,4 5,3 7,1 10,6 16,0 16,4 18,3 20,9 20,5 21,3 21,2 20,9
γ ~ U(0, 1)
τ ~ Gama(10-3, 10-3)
O gráfico ‘Doodle’ e o respectivo ‘Write Code’, referentes ao modelo no
WinBUGS/OpenBugs, são:
93 ROSSI, R.M.
name: mu[i] type: logical link: identity
value: alpha / ( 1 + exp(beta -gamma*x[i]))
sigma y[i]
for(i IN 1 : n)
model;
{
for( i in 1 : n )
{
y[i] ~ dnorm(mu[i],tau)
mu[i] <- alpha / (1 + exp(beta - gamma * x[i]))
}
alpha ~ dnorm(0, 0.000001)
beta ~ dnorm(0, 0.000001)
gamma ~ dunif(0, 1)
tau ~ dgamma(0.001, 0.001)
sigma <- 1 / sqrt(tau)
}
Dados:
list(n = 15,
y = c(1.3, 1.3, 1.9, 3.4, 5.3, 7.1, 10.6, 16, 16.4, 18.3, 20.9, 20.5, 21.3, 21.2, 20.9),
x = c(0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5))
Chutes iniciais:
list(alpha=20, beta=3, gamma=0.5, tau=1)
94 ROSSI, R.M.
Resultados:
node mean sd MC error 2.5% median 97.5% start sample
alpha 21.51 0.4486 0.01776 20.64 21.5 22.4 4001 7000
beta 3.98 0.2854 0.02458 3.412 3.963 4.567 4001 7000
gamma 0.6264 0.04774 0.003975 0.5324 0.6236 0.7264 4001 7000
sigma 0.7671 0.1754 0.00438 0.5147 0.736 1.18 4001 7000
tau 1.94 0.7861 0.01866 0.7182 1.846 3.776 4001 7000
x = c(0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5)
y = c(1.3, 1.3, 1.9, 3.4, 5.3, 7.1, 10.6, 16, 16.4, 18.3, 20.9, 20.5, 21.3, 21.2, 20.9)
plot(x, y, xlab="Ponto da raiz", ylab="H2O",bty="n")
y2 = y.est(alpha=21.51, beta=3.98, gamma=0.6264,x)
lines(x,y2, type="l",col=2,lwd=2)
6.449829
95 ROSSI, R.M.
20
15
H2O
10
5
0 2 4 6 8 10 12 14
Ponto da raiz
As pressuposições para o modelo de Wood (1967) para uma observação por animal são
baseados na distribuição Gama incompleta:
Yi ~ N ( µi ,τ ) , i = 1,...,30, com ε i ~ N ( 0, σ e2 )
e
µi = tib e a + ct i
nu theta phi
a c
b
mu[i] t[i]
tau y[i]
sigma
for(i IN 1 : n)
97 ROSSI, R.M.
model;
{
for( i in 1 : n )
{
y[i] ~ dnorm(mu[i],tau)
mu[i] <- pow(t[i],b) * exp(a + c * t[i])
}
a ~ dgamma(1,1)# pouco informativa
b ~ dunif(0,1)
c ~ dunif(-1,0)
tau ~ dgamma(0.001, 0.001)
sigma <- 1 / sqrt(tau)
nu <- pow( -b/c,b) * exp(a - b)
theta <- -b/c
phi <- - (b + 1) * log( -c)
}
Observação: Foi utilizado uma priori pouco informativa para a, isto é, a ~ Gama(1,1),
pois houve problema na geração a posteriori no WinBUGS/OpenBugs para o parâmetro a.
Dados:
list(n = 30,
y = c(3.5,4,4.5,5.5,7,7.3,6.7,6.7,6.6,5.9,5.6,5.5,5,5,4.7,4.7,4.5,4.4,4,4,3.9,3.8,3.5,
3.3,3.2,3,3,2.9,2.8,2.5),
t = c(15,20,30,40,50,60,70,80,90,100,110,120,130,140,150,160,170,180,190,200,
210,220,230,240,250,260,270,280,290,300))
Chutes iniciais:
list(a=1, b=0.5, c=-0.5, tau=1)
Resultados:
Foram realizadas 100.000 atualizações e, após um burnin de 10.000 e com saltos de
tamanho 50 (devido as autocorrelações) sobrou uma amostra limpa de tamanho 1.800, cujas
inferências são apresentadas a seguir:
node mean sd MC error 2.5% median 97.5% start sample
a 0.101 0.09378 0.004303 0.002899 0.07348 0.3529 10000 1800
b 0.5319 0.02862 0.001324 0.4574 0.5382 0.5702 10000 1800
c -0.0076 0.00041 0.000016 -0.008301 -0.0076 -0.00668 10000 1800
tau 5.063 1.372 0.03509 2.843 4.907 8.142 10000 1800
sigma 0.457 0.06373 0.00163 0.3506 0.4515 0.5936 10000 1800
nu 6.238 0.1436 0.003457 5.96 6.238 6.519 10000 1800
phi 7.48 0.08683 0.003594 7.25 7.499 7.592 10000 1800
theta 70.08 2.368 0.08196 65.32 70.11 74.52 10000 1800
98 ROSSI, R.M.
Conclui-se que esta amostra apresenta uma produção média máxima de η = 6,24 kg de
leite/cabra ocorre aos 70 dias, cuja persistência é de ϕ = 7,5 dias, isto é, em média há
aproximadamente 8 dias de persistência a partir do pico de produção – o animal manterá os
6,24 kg de produção num plateau de resposta por 8 dias.
Foi utilizado o programa R para a verificação do ajuste da curva estimada:
Função de Wood:
lact = function (a,b,c, t)
{
y = t^b * exp(a + c*t)
return(y)
}
Dados:
y = c(3.5,4,4.5, 5.5,7,7.3,6.7,6.7,6.6,5.9,5.6,5.5,5,5,
4.7,4.7,4.5,4.4,4,4,3.9,3.8,3.5,3.3,3.2,3,3,2.9,2.8,2.5)
t = c(15,20,30,40,50,60,70,80,90,100,110,
120,130,140,150,160,170,180,190,200,
210,220,230,240,250,260,270,280,290,300)
Chamada da função:
99 ROSSI, R.M.
Figura 3.28. Ajuste da curva de Wood (1967) para a Aplicação 3.3.20.
Observação: Outras formas para a curva de Wood podem ser encontradas na literatura, tais
como, µi = atib e − cti (apresentada no artigo original) ou µi = atib ecti . Esta última, por exemplo tem a
• Dia do pico: θ = b
c
• Persistência da lactação: φ = −(b + 1) ln(−c)
model;
{
for( i in 1 : n )
{
y[i] ~ dnorm(mu[i],sigma)
mu[i] <- pow(t[i],b) * exp(a + c * t[i])
}
a ~ dgamma(1,1)
b ~ dunif(0,1)
c ~ dunif(-1,0)
tau ~ dgamma(0.001,0.001)
sigma <- 1/sqrt(tau)
}
Chutes iniciais:
list(a=1, b=0.5, c=-0.5, tau=1)
Resultados para o Modelo I:
Foram realizadas 100.000 atualizações e, após um burn de 10.000 e com saltos de
tamanho 50 (devido às autocorrelações) sobrou uma amostra limpa de tamanho 2.000, cujas
inferências são apresentadas a seguir:
node mean sd MC error 2.5% median 97.5% start sample
a 4.545 0.04292 0.000833 4.458 4.546 4.631 10000 2000
b 0.09376 0.01818 0.000388 0.05803 0.09337 0.1307 10000 2000
c -0.00804 0.000612 0.000013 -0.00923 -0.008 -0.0069 10000 2000
tau 0.013 0.002861 0.000060 0.007941 0.01281 0.01903 10000 2000
sigma 8.941 1.013 0.029220 7.249 8.85 11.24 10000 2000
y=c(96.5,92.5,96.5,96,96,98.5,97,95.5,94.5,95.5,91.5,96.5,93,96.5,95.5,85,88.5,
87,85.5,87.5,66.5,72.5,56.5,62.5,60,62.5,54.5,64.5,57,58.5,49.5,48,54,55,50.5,
47,44.5,54.5,49.5,42,15,17.5,18,10.5,14.5)
t=c(1,1,1,1,1,24,24,24,24,24,48,48,48,48,48,72,72,72,72,72,96,96,96,96,96,120,1
20,120,120,120,144,144,144,144,144,168,168,168,168,168,192,192,192,192,192)
f1 = function (a,b,c, t)
{
y = t^b * exp(a + c*t)
y
}
a b c
mu[i] t[i]
tau y[i]
for(i IN 1 : n)
sigma
model;
{
for( i in 1 : n )
{
y[i] ~ dnorm(mu[i],tau)
mu[i] <- b / (1 + exp((t[i] - a) / c))
}
a ~ dnorm(0, 0.000001)
b ~ dnorm(0, 0.000001)
c ~ dgamma(0.001, 0.001)
tau ~ dgamma(0.001, 0.001)
sigma <- 1 / sqrt(tau)
}
Dados:
list(n = 45,
y=c(96.5,92.5,96.5,96,96,98.5,97,95.5,94.5,95.5,91.5,96.5,93,96.5,95.5,85,88.5,
87,85.5,87.5,66.5,72.5,56.5,62.5,60,62.5,54.5,64.5,57,58.5,49.5,48,54,55,50.5,47,
44.5,54.5,49.5,42,15,17.5,18,10.5,14.5),
t=c(1,1,1,1,1,24,24,24,24,24,48,48,48,48,48,72,72,72,72,72,96,96,
96,96,96,120,120,120,120,120,144,144,144,144,144,168,168,168,168,168,192,
192,192,192,192))
Observe na Figura 3.30 que é difícil decidir pelo melhor modelo, então, com o menor
DIC, o Modelo II foi o escolhido.
DICModelo I = 328,643
DICModelo II = 314,166 (Quanto menor, melhor!)
Comandos do R para verificação gráfica do ajuste do Modelo I e II, simultaneamente:
plot(t,y,ylim=c(0,110),xlab='Tempo (dias)',ylab='Germinação (%)')
lines(t,y1,lty=1)
lines(t,y2,lty=2)
legend(120,80,c('Modelo I','Modelo II' ),lty=1:2,bty='n',cex=.8)
Figura 3.31. Curvas Bayesiana e Frequentista ajustadas, considerando-se o Modelo II (Weibull com
três parâmetros).
Foi considerado que as observações seguem distribuição normal multivariada, pois são
correlacionadas no tempo, isto é, y ijk ~ NMV(µ k ; Σ k ) , em que Σ k é a matriz de
( )
considerada a matriz de correlação, isto é, se Yk ~ N µk , σ ke2 .
Para cada parâmetro, foram gerados 500.000 valores em um processo MCMC (Monte
CarloMarkov Chain), considerando-se um período de descarte amostral de 5.000 valores
iniciais. A amostra final, com 2.500 valores gerados,foi tomada com saltos de 200, isto é a
cada 200 valores gerados foi tomado um para pertencer à amostra.
Consideraram-se diferenças significativas em nível de 5% entre tratamentos, caso o valor
zero não estivesse contido do intervalo de credibilidade do contraste desejado.
As estimativas dos parâmetros b e c da Equação (1) apresentam assimetria aparente
para o inoculante bacteriano (SCE-IBC) (Propiolact MS01), capim-Elefante com inoculante
enzimo-bacteriano (SCE-IEZ) (Bacto Silo)e da silagem de milho (SMI) (Zea mays L.),
respectivamente, indicando comportamento não-linear destes parâmetros.
É comum na área a utilização de análise de variância frequentista com o objetivo de
fazer comparação múltipla de estimativas de parâmetros, e, para tal,é necessário que estas
sejam modeladas segundo um modelo linear, com pressupostos que devem ser atendidos,
entre eles, o de normalidade das estimativas de tais parâmetros. Em geral, não é possível
verificar este pressuposto, o que inviabiliza o uso do método. Neste caso, a inferência
Bayesiana supre esta necessidade.
As estimativas do parâmetro a (Tabela 3.15), para asilagem de milho, diferiram das
estimativas dos demais tratamentos (o valor ‘zero’ não está contido no intervalo de
credibilidade). O mesmo ocorre para as estimativas do parâmetro b. As estimativas do
parâmetro c diferiram apenas entre capim-Elefante com inoculante enzimo-bacterianoe
silagem de milho. A estimativa da degradabilidade efetiva (DE) de silagem de milho (SMI) é
significativamente superior às calculadas para a silagem de capim-Elefante (SCE-IBC e SCE-
IEZ) (Figura 3.32).
Foram comparadas as estimativas dos parâmetros obtidos pelos métodos Frequentista e
Bayesiano, e foi observado que não há grandes diferenças entre eles em todas as variáveis
estudadas, o que era de se esperar ao se utilizar distribuições a priori não-informativas. No
entanto, a metodologia Bayesiana permite que as estimativas dos parâmetros, para os
diferentes tratamentos sejam comparadas.
# Chutes iniciais
list(a=c(20,25,40), b=c(50,60,40), c=(0.03,0.05,0.04))
# Observação: chutes para as matrizes Omega 1,2 e 3 também são
necessárias e aqui são omitidas.
Observa-se que a silagem de milho (SMI) apresenta maior degradabilidade total, sendo
que as silagens de capim-Elefante são similares (Figura 3.33).
Figura 3.33. Comparação entre as curvas ajustadas de degradabilidade total de Matéria Seca,
respectivamente, para as silagens de capim-Elefante com inoculante bacteriano (SCE-IBC), capim-
Elefante com inoculante enzimo-bacteriano (SCE-IEZ) e de milho (SMI).
A metodologia Bayesiana pode ser aplicada sem restrição a dados dessa natureza. Para
os dados do presente estudo, as estimativas obtidas para os parâmetros da curva não-linear por
ambos os métodos não diferiram. No entanto, por meio da metodologia Bayesiana é possível
proceder às comparações entre esses parâmetros, considerando-se tratamentos distintos de um
beta0
x1[i]
x2[i]
beta2
for(i IN 1 : n)
phi p
model;
{
beta0 ~ dnorm(0, 0.000001)
beta1 ~ dnorm(0, 0.000001)
beta2 ~ dnorm(0, 0.000001)
phi ~ dgamma(1, 1)
for( i in 1 : n )
{
mu[i] <- pow(beta0 + beta1 * x1[i] + beta2 * x2[i],1/p)
y[i] ~ dgamma(phi,b[i])
b[i]<- phi / mu[i]
}
}
Foram gerados 100.000 valores para cada uma das cadeias, com período de descarte
amostral de 4.000 valores iniciais. As amostras finais foram tomadas em saltos iguais a: 5, 20,
23 e 20 e produziram amostras de tamanhos: 18.000, 4.500, 3.913 e 4.500, respectivamente,
para os parâmetros ϕ, β0, β1 e β2.
4.1 Introdução
O pacote BRugs do R, desenvolvido por Andrew Thomas, utiliza uma versão aberta do
WinBUGS, conhecida como OpenBUGS. Este pacote pode ser obtido diretamente da página
principal do CRAN do R, isto é, no endereço eletrônico http://cran.r-project.org/ no link
Packages, ou então, se você estiver conectado com a internet, pode instalar por meio do
procedimento descrito a seguir.
A principal vantagem do BRugs é fazer quase tudo o que é feito no WinBUGS em uma
única seção de comando.
Observação: O pacote BRugs depende da versão 2.5 ou superior do R, do pacote coda e
do programa OpenBUGS disponível no endereço eletrônico www.openbugs.net. Existem
outros pacotes e programas similares para modelagem Bayesiana e entre os mais populares:
BUGS, R2WinBUGS, JAGS, INLA etc. Outros programas computacionais estatísticos como,
por exemplo, o SAS também dispõem tal procedimento via MCMC por meio das PROC
MIXED, GENMOD, LIFEREG, PHREG etc. Para mais informações acesse o endereço
eletrônico The MCMC Procedure da web http://support.sas.com/documentation/ .
4.2 Procedimentos
1. Instalando o BRugs
No R, no menu principal ‘Pacotes Instalar pacote(s)...’
Observe que, neste exemplo, o número de cadeias é 1, com 10.000 iterações, com 1.000
de burn em saltos de tamanho 5. A opção DIC está acionada e, após algum tempo, o comando
a seguir mostrará os resultados:
print(dados.sim)
saida1=samplesSample("parâmetro 1")
amostra=cbind(samplesSample("parâmetro 1"), samplesSample("parâmetro
2"))
A análise de convergência deve ser realizada após esse procedimento para que se possa
realizada sobre os parâmetros considerados nas distribuições a priori, e portanto não em suas
funções.
que armazenará no diretório de trabalho previamente escolhido por meio do comando setwd.
A apresentação de todas as estimativas de todos os parâmetros pode ser obtida em:
samplesStats("*")
4.3 Aplicações
Aplicação 4.3.1. Análise de variância - Aplicação na odontologia.
Os dados a seguir foram obtidos de um experimento inteiramente casualisado no
Departamento de Odontologia da UEM, sob coordenação do professor Sérgio Sábio (Prótese),
com o objetivo de fazer comparações entre quatro tratamentos (cimentos para endocrown) em
corpos de prova (dentes de bovinos) submetidos à tensão (máquina Emic DL1000) até
ruptura. O objetivo foi o de testar, em nível de 5% de significância, por meio de comparações
Bayesianas, a hipótese nula de igualdade entre tratamento. Para tal foram utilizadas
distribuições a priori não-informativas no procedimento. Foi considerado que a resistência
(Yi) segue distribuição normal, isto é, Yi ~ Normal(µi,σ2), i = 1, 2, ..., nj para os j-ésimos
tratamentos. Para cada µi e σ2 (de cada tratamento) foram consideradas a priori distribuições
não-informativas, respectivamente, µi ~ Normal(0,10-6 ) e τ ~ Gama(10-3,10-3), tal que
1
σ= . Foram realizadas comparações múltiplas entre as distribuições a posteriori das
τ
médias. Consideraram-se, como diferentes, em nível de 5% de significância, os tratamentos
cujos intervalos de credibilidade para as diferenças médias não contemplam o valor zero. A
obtenção das distribuições marginais a posteriori para todos os parâmetros ocorreu por meio
do pacote BRugs do programa R. Foram gerados 11.000 de valores em um processo MCMC
(Monte CarloMarkov Chain), considerando-se um período de descarte amostral de 1.000
valores iniciais, assim, a amostra final contém 1.000 valores gerados. A convergência das
cadeias foi verificada por meio do pacote coda do programa R, pelo critério de Heidelberger e
Welch (1983).
O modelo *.bug
model;
{
for( i in 1 : n1 ) { y1[i] ~ dnorm(mu1,tau1) }
for( i in 1 : n2 ) { y2[i] ~ dnorm(mu2,tau2) }
for( i in 1 : n3 ) { y3[i] ~ dnorm(mu3,tau3) }
for( i in 1 : n4 ) { y4[i] ~ dnorm(mu4,tau4) }
mu1 ~ dnorm(0, 0.000001)
mu2 ~ dnorm(0, 0.000001)
mu3 ~ dnorm(0, 0.000001)
mu4 ~ dnorm(0, 0.000001)
tau1 ~ dgamma(0.001, 0.001)
tau2 ~ dgamma(0.001, 0.001)
tau3 ~ dgamma(0.001, 0.001)
tau4 ~ dgamma(0.001, 0.001)
sigma1 <- 1 / sqrt(tau1)
sigma2 <- 1 / sqrt(tau2)
sigma3 <- 1 / sqrt(tau3)
sigma4 <- 1 / sqrt(tau4)
d1 <- mu1 - mu2
d2 <- mu1 - mu3
d3 <- mu1 - mu4
d4 <- mu2 - mu3
d5 <- mu2 - mu4
d6 <- mu3 - mu4
}
Linhas de comando no R:
rm(list = ls())
library(MASS)
library(BRugs)
library(coda)
anova.bayes = function(iter,burn,salto,dados)
{
y1=dados[dados[,2]==1,1]
y2=dados[dados[,2]==2,1]
y3=dados[dados[,2]==3,1]
y4=dados[dados[,2]==4,1]
n1 = length(y1)
n2 = length(y2)
n3 = length(y3)
n4 = length(y4)
# O modelo
modelo = "modelo.bug"
dados.aux = list(n1=n1,n2=n2,n3=n3,n4=n4,y1=y1,y2=y2,y3=y3,y4=y4)
# Chutes
chutes = function()
list(mu1=mean(y1),mu2=mean(y2),mu3=mean(y3),mu4=mean(y4),
tau1=1,tau2=1,tau3=1,tau4=1)
# Parâmetros estimados
parametros = c("mu1","mu2","mu3","mu4",
"d1","d2","d3","d4","d5","d6",
"sigma1","sigma2","sigma3","sigma4",
"tau1", "tau2", "tau3", "tau4")
cadeias=cbind(samplesSample("mu1"),samplesSample("mu2"),
samplesSample("mu3"),samplesSample("mu4"),
samplesSample("tau1"),samplesSample("tau2"),
samplesSample("tau3"),samplesSample("tau4"))
Chamando a função
setwd("C:\\Work\\BayesZoo - Modulo IV\\Aplicação 431-Resistência")
dados = read.table("dados.txt",header=T,skip=0)
dados = as.matrix(dados)
saida=anova.bayes(iter=11000,burn=1000,salto=1,dados=dados)
Gráfico de Box-plot
n = length(saida[,1])
res.media = c(saida[,1],saida[,2],saida[,3],saida[,4])
tratamento = factor(rep(1:4, c(n,n,n,n)),labels = c("1","2","3","4"))
boxplot(res.media~tratamento,xlab="Tratamento",ylab="Resistência")
Resultados
400
200
0
1 2 3 4
Tratamento
Figura 4.1a. Box-plot das distribuições a posteriori da resistência média dos tratamentos.
700
650
600
550
Resistência
500
450
400
350
300
250 Média
1 2 3 4 Média±Erro
Tratamento
Figura 4.1b. Comparações Bayesianas entre as resistências médias das distribuições a posteriori dos
devidos tratamentos.
Resultados
Médias dos Tratamentos
1 2 3 4
541.5 481.6 374.6 323.0
Figura 4.1c. Comparações frequentistas entre as resistências médias dos devidos tratamentos.
A presente aplicação tem por objetivo obter estimativas para os parâmetros da curva de
produção de ovos de codornas, empregando-se a função logística no primeiro estágio de um
modelo Bayesiano descrito a seguir.
tau.alpha tau.beta
alpha.bar beta.bar
sigma.alpha sigma.beta
alpha[i] beta[i]
p[i,j]
y[i,j]
for(j IN 1 : J)
for(i IN 1 : n)
model;
{
for( i in 1 : n )
{
alpha[i] ~ dnorm(0,tau.alpha)
beta[i] ~ dnorm(0,tau.beta)
for( j in 1 : J )
{
y[i , j] ~ dbern(p[i , j])
logit(p[i , j]) <- alpha[i] + beta[i] * j
}
}
alpha.bar <- mean(alpha[ ])
beta.bar <- mean(beta[ ])
tau.alpha ~ dgamma(0.001,0.001)
sigma.alpha <- 1 / sqrt(tau.alpha)
tau.beta ~ dgamma(0.001,0.001)
sigma.beta <- 1 / sqrt(tau.beta)
}
O banco de dados real possui mais de 300 codornas com 90 ocasiões de postura. Serão
consideradas, aqui, a título de exemplificação, apenas dez codornas com cinco ocasiões de
postura, como descrito a seguir:
O valor do DIC é:
D D( θ) pD DIC
y67.55 64.28 70.82 3.267
Observe que cada animal possui sua curva de postura, e os parâmetros, alpha.bar e
beta.bar, representam os parâmetros da curva média de postura, considerando-se todos os
animais. Para se obter os gráficos das distribuições a posteriori para estes parâmetros, podem-
se utilizar as seguintes linhas de comando no R:
par(mfrow=c(1,2))
hist(curva.media[,1],main='',col=8,xlab=expression(paste(alpha,"-médio")),
ylab = expression(paste("f(",alpha,"|y)")))
hist(curva.media[,2],main='',col=8,xlab=expression(paste(beta,"-medio")),
ylab = expression(paste("f(",beta,"|y)")))
Para se traçar a curva média de postura por meio da Equação (4.1), considerando-se
todas as codornas e as 90 ocasiões de postura, têm-se os seguintes parâmetros:
alpha.medio = -0.4518
beta.medio = 0.08302
t = 1:90
phi1 = exp(alpha.medio + beta.medio*t)/(1+exp(alpha.medio + beta.medio*t))
plot(t,phi1,xlab="j-ocasião (dias)", ylab=expression(paste("Prob. de postura(",
sep=" ",phi[j],")")),type="l")
Mais detalhes a respeito dessa modelagem pode ser encontrada em Rossi et al. (2009).
Folicular
Líquido
Oócitos
Oócitos
Viáveis
Níveis
Grupo
Vacas
Sódio
de
de
Pré- Pós-
- Total Total Tratamento Tratamento -
Controle 45 4 0,026 0,036 0,150
Controle 26 3 0,038 0,046 0,050
Controle 9 - 0,094 0,190 0,190
Controle 3 4 0,068 0,068 -
Controle 32 11 0,062 0,100 0,170
Tratado 46 17 0,036 0,110 0,190
Tratado 1 - 0,040 0,130 0,080
Tratado 94 19 0,096 0,076 0,090
Tratado 13 4 0,050 0,080 -
Tratado 22 5 0,094 0,110 0,130
Observe que o banco de dados oferece respostas tanto discretas (de contagem) quanto
contínuas, para grupos independentes (tratados e controles) e pareados (antes e depois) além
de baixa quantidade de informação. Tradicionalmente, pela metodologia frequentista, testes
paramétricos e/ou não-paramétricos são utilizados, produzindo-se resultados fracos e muitas
vezes controversos em relação ao que o experimentador, com seu feeling, suspeita, isto é, de
haver diferenças (ou não) significativas entre os grupos comparados. A Inferência Bayesiana é
mais que sugestiva nesse exemplo típico, de tal forma que pressupostos necessariamente
frequentistas são descartados, tais como normalidade nos dados, além de produzir uma
inferência a respeito dos parâmetros populacionais com maior precisão.
y1[i] y2[j]
mu1 mu2
delta
Lembre-se de que o modelo abaixo deve ser salvo no diretório de trabalho com a
extensão *.bug, por exemplo, ‘modelo.bug’.
Pela característica dos dados, agora contínua, uma distribuição normal é assumida:
yiC ~ Normal(µ C , σ2C ) e yiT ~ Normal(µ T , σT2 ) com uma estrutura hierárquica para
a os níveis médios de sódio pós-tratamento.
sigma1 sigma2
mu1 mu2
delta
O autopareamento ocorre quando o indivíduo serve como seu próprio controle, como
na situação em que um indivíduo recebe duas drogas administradas em ocasiões diferentes,
por exemplo. Outra situação é a que um tratamento é administrado e as variáveis de interesse
são observadas antes e depois do programa. Finalmente, a comparação de dois órgãos no
mesmo indivíduo, como braços, pernas, olhos, narinas, segundo alguma característica
estudada também constitui um auto-pareamento.
for(i IN 1 : n)
mu
modelo3.bug
model;
{
for( i in 1 : n ) { dif[i] ~ dnorm(mu,tau) }
mu ~ dnorm( 0, 0.000001)
tau ~ dgamma(0.001, 0.001)
sigma <- 1/sqrt(tau)
}
model;
{
for(i in 1 : n)
{
y[i] ~ dnorm(mu[i],tau)
mu[i] <- N*C*K*pow(1-K, [i] - 1)
}
N <- sum(y[])
C <- 1/(1-pow(1-K, n))
K ~ dunif(0,1)
tau ~ dgamma(0.001,0.001)
sigma <- 1 / sqrt(tau)
}
Dados:
yiapo = c(191, 132, 113, 107, 104, 73, 65, 49, 40, 32, 31, 26, 21, 20, 19, 17, 16, 16, 8, 8,
6, 5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1)
ytibagi = c(161, 153, 103, 47, 43, 42, 32, 29, 26, 23, 22, 20, 16, 13, 13, 13, 12, 10, 9, 8, 8,
6, 6, 6, 6, 5, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 1)
ypitangui = c(622, 329, 307, 284, 274, 264, 251, 211, 184, 161, 160, 132, 113, 93, 87, 73,
58, 44, 39, 36, 36, 33, 32, 26, 24, 22, 22, 20, 16, 14, 11, 11, 5, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1)
ysaojoao = c(757, 300, 220, 123, 99, 77, 66, 54, 51, 43, 22, 17, 12, 12, 9, 8, 8, 8, 7, 6, 5, 5,
5, 4, 4, 3, 1, 1, 1)
750
Iapó
Tibagi
600 Pitangui
Abundância absoluta de espécies
São João
450
300
150
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43
Rank de espécies
Figura 4.4. Distribuição das espécies ordenadas por abundância nos locais de amostragem da
bacia do rio Paraná.
Em concordância com a análise gráfica obtida a partir do Whittaker plot, e
considerando que o valor de k é inversamente proporcional aos dois componentes da
diversidade (riqueza e equabilidade), para o rio Pitangui foi estimado o menor valor de k, e o
maior valor foi observado para o rio São João (Tabela 4.4).
Foi observada diferença significativa entre todos os locais quanto aos valores de k, isto
é, os rios possuem diferentes graus de heterogeneidade em termos de abundância (Tabela 4.5).
É possível avaliar ainda que o rio São João, que apresentou significativamente maior valor
para k, é provavelmente o ambiente mais restritivo (e Pitangui é o menos restritivo) para as
espécies de peixes em relação aos demais locais. Os contrastes de distribuição de abundância
observados neste estudo para os rios amostrados são indícios dos diferentes graus de
antropização.
Abundância absoluta
Abundância absoluta
100
100
50
50
0
0
0 5 10 15 20 25 30 35 0 5 10 15 20 25 30 35
D
C
500
600
Abundância absoluta
Abundância absoluta
400
400
300
200
200
100
0
0
0 10 20 30 40 0 5 10 15 20 25 30
Figura 4.5. Distribuição dos valores de abundância ordenados em relação ao rank de espécies
dos rios Iapó (A), Tibagi (B), Pitangui (C) e São João (D), Paraná.
Tabela 4.5. Resultados a posteriori dos contrastes entre os valores médios de k ± DP (desvio-
padrão) dos diferentes locais amostrados.
Contrastes k ± DP P2,5% P97,5%*
Iapó - Tibagi 0,03393± 0,00640 -0,0468 -0,0218
Iapó - Pitangui 0,03573 ± 0,00127 0,0332 0,0383
Iapó - São João 0,21795 ± 0,01597 -0,2494 -0,1865
Tibagi - Pitangui 0,06965± 0,00521 0,0601 0,0801
Tibagi - São João 0,18403± 0,00959 -0,2026 -0,1647
Pitangui - São João 0,25368± 0,01477 -0,2827 -0,2248
*diferença significativa entre contrastes com 95% de credibilidade (0∉Icr).
Literatura citada
HILL,J. K; HAMER, K. C. Using species abundance models as indicators of habitat disturbance in tropical
forests. Journal of Applied Ecology, v.3, p. 458–60, 1998.
MAGURRAN, A. E. Measuring Biological Diversity. Blackwells, Oxford, UK, 2004.
MARTINS, F. R.; SANTOS, F. A. M. Técnicas Usuais De Estimativa Da Biodiversidade. Revista Holos. p. 236-
67, 2001.
MAY, R M. Patterns of species abundance and diversity. In CODY, ML. and DIAMOND, JM. (Eds.). Ecology
and evolution of communities. Cambridge, Harvard University Press, 1975.
TOKESHI, M. Species abundance patterns and community structure. Advanced Ecology Research, v.24, p.111-
86, 1993.
A rainha é a peça chave no melhoramento, é a única fêmea fértil, responsável por toda
postura, e por meio de suas qualidades herdáveis estão intimamente relacionadas com as
atividades da colônia. Por ser mãe de todos os indivíduos da colônia, é responsável por
metade do material genético herdado por suas filhas operárias, e por todo material genético
herdado por seus filhos zangões, uma vez que estes últimos são haplóides (BIENEFELD e
PIRCHNER, 1990).
A produção da colônia de produtos economicamente importantes em Apis mellifera L. é
afetada pela atividade combinada de rainha e operárias (BIENEFELD e PIRCHNER, 1990).
Tarpy et al. (2000) afirmaram que há potencial de seleção para rainhas recém-emergidas pois,
existe variação no potencial reprodutivo. Vários estudos relacionaram o peso da rainha à
emergência com o número de ovaríolos, diâmetro e volume da espermateca (TARPY et al.,
2000; GILLEY et al., 2003; KAHYA et al., 2008).
Considerando essas informações, a rainha recém-emergida é estudada para ser utilizada
como critério de seleção, com sua produção de grande escala feita em laboratório torna-se
necessário aperfeiçoar as técnicas de armazenamento até que todas do mesmo grupo de
seleção nasçam a fim de mensurar o peso a emergência das mesmas. O objetivo deste trabalho
foi estudar a sobrevivência de rainhas africanizadas visando aperfeiçoar o armazenamento e
torná-lo mais eficiente.
O estudo foi desenvolvido no laboratório de produção de rainhas do apiário central
localizado na Fazenda Experimental de Iguatemi da Universidade Estadual de Maringá
(FEI/UEM-2012).
Foi utilizado o método modificado de Doolitlle para a produção de rainhas, em que
consiste na transferência de larvas, de sua célula de origem, em um favo de crias de operárias
para células artificiais reais, confeccionadas com cera natural ou material plástico.
No dia da transferência o favo convencional de cria identificados em horas foi levado
ao laboratório de produção de rainhas, mantendo o ambiente controlado com temperatura de
34ºC e umidade de 50%, cobertos com pano limpo e úmido, para que a qualidade das larvas
fosse mantida até o momento da transferência em que cada cúpula recebeu uma gota de geléia
real diluída em água destilada (1:1) mais a larva transferida que, posteriormente, foram
Na Figura 4.6 (a) e (b) são apresentadas as funções de sobrevivência para o tempo de
vida de abelhas rainhas em relação ao tratamento.
Literatura Citada
BIENEFELD, K.; PIRCHNER, F.; Heritabilities for several colony traits in the honeybee (Apismellifera
carnica). Apidologie, v.21, n.3, p.175-83, 1990.
COSTA, F.M. Estimativas de parâmetros genéticos e fenotípicos para peso e medidas morfométricas em
rainhas Apis mellifera africanizadas. 2005. 39 f. Dissertação (Mestrado emZootecnia) - UEM, Universidade
Estadual de Maringá, Maringá.
COLOSIMO, E. A. Análise de Sobrevivência Aplicada. Piracicaba: RBRAS, 2001. v. 300. 150p .
GILLEY, D.C.; TARPY, D.R.; LAND, B.B. Effect of queen quality on interactions between workers and
dueling queens in honeybee (Apis mellifera L.) colonies. Behavioral Ecology andSociobiology, v.55, n.2, p.190-
6, 2003.
HATCH, S.; TARPY, D.R.; FLETCHER, D.J.C. Worker regulation of emergency queen rearing in honey bee
colonies and the resultant variation in queen quality. Insectes Sociaux, v.46, p.372-7, 1999.
HOOPINGARNER, R.; FARRAR, C. L. Genetic control of size in queen honey bees. Journal of Economic
Entomology, v.52, n.4, p.547-8, 1959.
KAHYA, Y.; GENÇER, H.V.; WOYKE, J. Weight at emergence of honey bee (Apis mellifera caucasica)
queens and its effect on live weights at the pre and post mating periods. Journal ofApicultural Research, v.47,
n.2, p.118-25, 2008.
METORIMA, F. N. et al.Peso de rainhas africanizadas após a emersão. In: Anais do 21º Congresso Brasileiro de
Zootecnia. Maceió (AL), 23-27 maio 2011. p.1-4.
MOURO, G.F.; TOLEDO, V.A.A. Evaluation of Apis mellifera Carniolan and Africanized honey bees in royal
jelly production. Brazilian Archives of Biology and Technology, v.47, n.3, p.469-76, 2004.
SZABO, T.I.; LEFKOBITCH, L.P. Fourth generation of closed population honeybee breeding. Apidologie, v.
19, n. 3, p. 259-74, 1973.
TARPY, D.R.; HATCH, S.; FLETCHER, J.C. The influence of queen age and quality during queen replacement
in honeybee colonies. Animal Behaviour, v.59, n.1, p.97-101, 2000.
O conjunto de dados utilizado nas análises foi cedido pelo Grupo de Pesquisa
PeixeGen da Universidade Estadual de Maringá e continha 3.023 observações de peso vivo
de 300 machos e 305 fêmeas de tilápias do Nilo, linhagem Tilamax, cultivados em sistema de
tanques-rede no ano de 2012. Realizou-se a primeira biometria após a identificação e mais
quatro biometrias durante o período de cultivo para a coleta de informações de peso e sexo.
Logístico y (t ) = A(1 − Be − Kt ) −1
Pressupôs-se para todos os modelos que Yi segue distribuição normal, isto é, yi ~ N(µ i,
σ ). Para K, A e B considerou-se distribuições a priori não-informativas, com K ~ N(0, 10-6) e
2
Literatura Citada
ANDRADE FILHO, M. G. et al. Uma abordagem bayesiana para curvas de crescimento com diferentes
densidades a priori. Res. Bras. Biom., v.28, p.161-181, 2010.
ARAÚJO, J. C.; MÁRQUEZ, R. M. G. Modelos de Von Bertalanffy e Gompertz para descrever os parâmetros
de tamanho e peso médio de tilápias. Cadernos do IME- Série Matemática, v. 20, p.41- 50, 2008.
BROW, J. E.; FITZ HUGH Jr., H. A.; CARTW RIGHT, T. C. A. A comparision of nonlinear models for
describing weight-age relationships in cattle, J . Anim. Sci., Chanpaign, v.42, n.4, p.810-818, 1976.
LAIRD, A. K. Dynamcs of relative growth, Growth.[S.l.], v. 29, n. 9, p. 249-263, 1965.
NELDER, J. A. The fitting of a generation of the logistic curve. Biometrics. Washington, v, 17, p, 89-110, 1961.
SANTOS, V. B. et al. Avaliação de curva de crescimento morfométrico de linhagens de Tilápia do Nilo
(Oreochromis niloticus). Ciênc. Agrotecnol. Lavras, v,31, n,5, p.1486-1492, 2007.
( )
yi = β 0 + β1 X 1 + β 2 X 12 + β 3 X 2 + β 4 X 22 + β 5 X 1 X 2 + ε i ; ε i ~ N 0, σ e2 .
Níveis de Arginina
x1 = c(1.22, 1.22, 1.22, 1.22, 1.52, 1.52, 1.52, 1.52, 1.82, 1.82, 1.82, 1.82, 2.12, 2.12,
2.12, 2.12)
Níveis de Lisina
x2 = c(1.1, 1.4, 1.7, 2.0, 1.1, 1.4, 1.7, 2.0, 1.1, 1.4, 1.7, 2.0, 1.1, 1.4, 1.7, 2.0)
O ajuste por meio de Inferência Frequentista para os dados pela seguinte linha de
comando no R:
pars = lm(y ~ x1 + I(x1^2) + x2 + I(x2^2) + x1*x2)
print(summary(pars))
Função Bayesiana:
bayes.mrlm2e2i.normal = function(iter,burn,salto,dados)
{
y = dados[,1]
n = length(y)
x0 = rep(1,n)
x1 = dados[,2]
x2 = dados[,3]
x = cbind(x0,x1,x1^2,x2,x2^2,x1*x2)
P = ncol(x)
dados.aux = list(n=n, x=x, y=y, P=P)
modelo = "modeloregmult.bug"
cat("\n -------------Estimativas Frequentistas-------------")
cat("\n ")
pars = lm(y ~ x1 + I(x1^2) + x2 + I(x2^2) + x1*x2)
print(summary(pars))
beta.aux = pars$coef
chutes = function() list(beta=beta.aux, tau=1)
parametros = c("beta","sigma")
res = BRugsFit(modelFile=modelo, data=dados.aux, inits=chutes,
numChains=1, parametersToSave=parametros,
nIter=iter, nBurnin=burn, nThin=salto,
DIC=TRUE, working.directory=NULL, digits=5)
nome.beta = paste("beta[",1:P,"]",sep="")
cadeias = samplesSample("sigma")
for (j in 1:P)
{
cadeias = cbind(cadeias,samplesSample(nome.beta[j]))
}
cat("\n -----Critério de convergência Heidelberger e Welch-----")
print(heidel.diag(cadeias))
saida = bayes.mrlm2e2i.normal(iter=10000,burn=1000,salto=1,dados)
O termo na iteração não foi significativo para o modelo e portanto pode ser omitido na
construção da Superfície de Resposta.
RESUMO. Euphorbia heterophylla é uma planta daninha que e tem alto potencial de reduzir
a produtividade e lucratividade das culturas. Devido aos casos de resistência dessa e outras
daninhas aos mais diversos mecanismos de ação de herbicidas, alternativas no manejo dessas
invasoras têm sido estudadas. Neste sentido, a alelopatia tem se aprofundado em estudos com
uso de culturas de cobertura para o controle das mais diversas daninhas. O milheto
(Pennisetum glaucum), que vem sendo utilizado como cobertura, tem causado supressão de
crescimento de ervas daninhas, mostrando, assim, grande potencial para esse fim. Com
objetivo de avaliar a atividade alelopática de milheto, foram obtidos extratos em solventes
orgânicos. O extrato hidrometanólico, o particionado mais ativo, foi então utilizado no ensaio
para avaliar seu efeito na mortalidade desta daninha após 15 dias de tratamento. Os resultados
foram obtidos por meio da inferência frequentistas e Bayesiana e, ao final, comparados. O
extrato hidrometanólico de milheto apresentou efeito sobre a mortalidade de plantas de
amendoim-bravo. A inferência Bayesiana mostrou-se mais sensível e pode capturar efeito do
extrato que foram considerados não significativos na modelagem tradicional. A partir do
modelo logístico ajustado, a DL50 para o extrato hidrometanólico obtida foi de 820 mg/L.
Palavras-chave: Alelopatia, Milheto, Amendoim-bravo.
Introdução
O estudo da alelopatia tem recebido considerável atenção, pois os aleloquímicos
podem reduzir a produção agrícola, constituir defensivos agrícolas naturais e permitir a
utilização de restos culturais como uma ferramenta no manejo integrado de plantas daninhas
(FERREIRA e AQUILA, 2000; MORAES et al., 2009).
O milheto é uma gramínea amplamente empregada na recuperação de solos
degradados e alimentação animal e que, entretanto apresenta poucos estudos sobre seus
possíveis efeitos alelopáticos. Por sua vez, o incremento constante no número de daninhas
resistentes a herbicidas sintéticos gera a necessidade de adoção de novas estratégias de
manejo de plantas daninhas bem como a busca por novas substâncias que atuem como
herbicidas (DUKE et al., 2002). O amendoim-bravo, por exemplo, é uma planta daninha que
infesta a maioria dos campos de soja do Brasil e tem alto potencial de reduzir a produtividade
da cultura da soja (MESCHEDE et al., 2002).
Em 2006, estudos conduzidos por TREZZI e colaboradores constataram que a
palhada de sorgo, milho ou aveia, na superfície do solo, reduziram a velocidade de
Material e Métodos
O milheto foi semeado em campo aberto na Fazenda Experimental de Iguatemi-FEI e
oitenta dias após a emergência a parte aérea foi colhida, triturada e seca em estufa a 40°C.
Seiscentos e cinquenta gramas de massa seca proveniente dessa palhada foram submetidos à
maceração com metanol resultando, no extrato metanólico bruto. Este foi dissolvido em uma
solução água/metanol (3:1) e fracionado três vezes por ordem de polaridade em 150 mL de
cada um dos seguintes solventes: hexano, diclorometano, acetato de etila e butanol. A fração
hidrometanólica foi obtida após esta extração com o butanol, último na ordem de partição.
Sementes de E. heterophylla foram germinadas em rolo de papel por 5 dias em BOD
à 25 °C e fotoperíodo de 12 h e depois incubadas com 250 mL de solução nutritiva (DONG et
al., 2006) e seu respectivo tratamento em pH = 6,0, por 15 dias, sendo esta renovada no 4, 7,
10 e 13° dia de incubação. A sala de incubação foi mantida a 25 °C e a intensidade luminosa
de 400 µmols de fótons m-2 s-1.
O experimento foi elaborado um delineamento inteiramente casualizado (DIC) com 5
tratamentos e 4 repetições cada, sendo a unidade experimental formada por uma planta. Os
tratamentos foram compostos por controle contendo somente solução nutritiva e quatro doses
crescentes (250, 500, 750 e 1000 mg/L) de extrato hidrometanólico. Ao final de 15 dias de
incubação, o número de plantas mortas foi coletado e os dados ajustados para uma curva de
dose resposta para os dados binários por meio de Modelos Lineares Generalizados (GLM) e,
subsequentemente, via Inferência Bayesiana.Ao final seus resultados foram comparados como
parte dos objetivos do trabalho.
Para estimar os parâmetros por meio de GLM, foi adotado o modelo Binomial para
variável resposta que é dicotômica, com parâmetros n e p, isto é,
= ou = + , onde:
Neste sentido, mais trabalhos devem ser realizados com doses a partir do valor de
DL50 para que o controle efetivo desta planta daninha através de aleloquímicos dessa fração
para que seja incrementada a taxa de controle. Dados de trabalho de Silva (2013) indicam que
esta fração teve ação sobre outras variáveis biológicas do amendoim-bravo como na via de
lignificação, metabolismo oxidativo aliada à redução de crescimento das plantas que não
apresentaram mortalidade.
Conclusão
O extrato hidrometanólico de milheto apresentou efeito sobre a mortalidade de plantas
de amendoim-bravo. A inferência Bayesiana mostrou-se mais sensível e pode capturar efeito
do extrato que foram considerados não significativos na modelagem generalizada. A partir do
modelo logístico ajustado, a DL50 para o extrato hidrometanólico obtida foi de 820 mg/L.
Apêndice (Comandos no R)
rm(list=ls(all=TRUE))
x = c(0,0,0,0,250,250,250,250,500,500,500,500,750,750,750,750,1000,1000,1000,1000)
r = c(0,0,0,0, 0,0,0,0, 0,0,1,1, 0,1,0,1, 1,1,0,0)
dados = data.frame(x,r)
dados
Análise Frequentista
logit = glm(r ~ x, family="binomial", data=dados)
summary(logit)
Análise Bayesiana
x2 = c(0,250,500,750,1000)
n2 = c(4,4,4,4,4)
r2 = c(0,0,2,2,2)
dados2 = data.frame(x2, n2, r2)
dados2
setwd("C:\\Work")
library(BRugs)
library(coda)
saida = bayes.doseresposta(iter=100000,burn=10000,salto=10,chutes=c(-3,0.003),
dados=dados2)
# Observação: O tempo computacional é alto!
y.aux = numeric()
dose = c(0:2000)
b0 = median(saida[,1]) # Mediana (devido a assimetriaa posteriori)
b1 = mean(saida[,2])
for (i in 1:length(dose))
{
y.aux[i] = p.logit(beta=c(-3.23905,0.00418),x=dose[i])
}
A Inferência Bayesiana está para o estatístico, assim como a rede está para o pescador.
Ambos são imprescindíveis!
Robson M. Rossi
BEST, N. G.; COWLES, M. K.; VINES, S. K. CODA: Convergence diagnostics and output
analysis software for Gibbs sampler output. Cambridge, 1995.
BOLSTAD, W. M. Introduction to Bayesian Statistics. New Jersey: John Wiley & Sons,
2004.
BROEMELING, L. D. Bayesian Inference for the General Linear Model. Statistic: Textbooks
and Monographs, v.60, New York, 1985.
CARLIN, B. P.; Gelfand, A. E.An iterative Monte Carlo method for nonconjugate Bayesian
analysis. Statistic and Compunting,New York, v.1,p.119-128, 1991.
CONGDON, P. Applied Bayesian Modelling. New Jersey: John Wiley & Sons, 2014.
COX, D. R.; HINKLEY, D. V. Theory Statistics. New York: Chapman and Hall, 1974.
GELMAN, A. et al. Bayesian Data Analysis. 1. ed. Chapman & Hall, 1995.
GELMAN, A.; RUBIN, D. B. Inference from iterative simulation using multiple sequences.
Statistical Science,Hayward, v.7, n.4, p.457-511, 1992.
GILKS, W. R., WILD, P. Adaptive Rejection Sampling for Gibbs Sampling. Applied
Statistic, London, v.44, n.4, p.455-72, 1992.
HARRIS, B. J.; ADAMS, A. L.; VAN HORN, H. H. Mineral needs of dairy cattle. Florida
Cooperative Extension Service. Florida: Institute of Food and Agricultural Sciences,
University of Florida, 1994.
HASTINGS, W. K. Monte Carlo Sampling Methods Using Markov Chains and Their
Applications. Biometrika, v.57, p.97-109, 1970.
HEIDELBERGER, P.; WELCH, P. Simulation run length control in the presence of an initial
transient. Operations Research,Baltimore, v.31, p.1109-44, 1983.
KASS, R. E.; WASSERMAN, L. The selection of prior distributions by formal rules. JASA-
Journal of the American Statistical Association, London, v.91, p.1345-70, 1996.
LESAFFRE, E.; LAWSON, A. B. Bayesian Bioestatistics, 3ª ed. New York: Ed. Jon Wiley
& Sons Ltd, 2012.
LEE, P. M. Bayesian Statistics: an introduction. 3ª ed. New York: Ed.Jon Wiley & Sons
Ltd, 2004.
MARIN, JM.; ROBERT C. Bayesian Essentials with R. 3ª ed.New York: Springer, 2014.
MEHREZ, A.Z.; ORSKOV, E.R. A study of the artificial fiber bag technique for determining
the digestibility feeds in the rumen. Journal of Agricultural Science, Obregon, v.88,n.3,
p.645-650, 1977.
NTZOUFRAS, L. Bayesian Modeling Using WinBUGS. New Jers: John Wiley & Sons, ,
2009.
ROSSI, R. M.; GUEDES, T. A.; MARTINS, E. N.; JOBIM, C. C.Bayesian analysis for
comparison of nonlinear regression model parameters: na application to ruminal degradability
data. Revista Brasileira de Zootecnia, Viçosa,v.39, n.2, p.419-424, 2010.
RUE, H.; MARTINO, S.; CHOPIN, N.Approximate Bayesian inference for latentGaussian
models by using integrated nestedLaplace approximations. J. Roy. Stat. Soc. B,v.71, p.319-
392, 2009.
SPIEGELHALTER, D. J.; BEST, N. G.; CARLIN, B. P.; VAN DER LINDE, A. BUGS – A
Bayesian measures of model complexity and fit. Journal of the Royal Statistical Society,
v.64, Série B, p.583-639, 2002.
VAN TASSEL, C.P.; VAN VLECK, L.D. Multiple trait Gibbs Sampler for animal models:
flexible programs for Bayesian and likelihood-based (co)variance components inference.
Journal of Animal Science, Champaign,v.74, p.2586-97, 1996.
VERHULST, P.F. Notice sur la loi que la population suit dans son accroissement.
Correspondence Mathématique et Physique, v.10, p.113-121, 1838.
WEST, M.; HARRISON, P. J.; MIGON, H. S. Dynamic generalized linear models and
Bayesian forecasting. JASA-Journal of the American Statistical Association,Washington,
v.80, p.73-83, 1985.
WOOD, P. D. P. Algebraic model of the lactation curve in cattle. Nature. London, p.216-164,
1967