Endereço

Departamento de Estatística – UFV
Av. Peter Henry Rolfs, s/n
Campus Universitário
36570-900, Viçosa, MG
Tel.: +55 (31) 3612-6150
E-mail: det@ufv.br

Prof. Moysés Nascimento – 4.Article

4.Artigo: Modelagem hierárquica Bayesiana na avaliação de curvas de crescimento de suínos genotipados para o gene halotano. Ciência Rural (UFSM. Impresso), v. 44, p. 1853-1859, 2014.

Rotinas do Artigo

1- Rotinas utilizadas no software R considerando o ajuste do modelo Logístico aos dados individuais
de peso-idade dos suínos via metodologia Bayesiana para um dos quatro grupos de animais.

library(R2OpenBUGS)
setwd("diretório")
y=read.table("endereço completo do arquivo")
x=read.table("endereço completo do arquivo")
Nid=nrow(y)    # número de animais do grupo
N=ncol(y)      # número de observações por animal

linemodel<-function()         #especificando o modelo
{ for (i in 1:Nid)
   { for (j in 1:N)         
     { Y[i,j]~dnorm(mu[i,j],tau)                                 
       mu[i,j]<-a[i]*exp(-b[i]*exp(-c[i]*X[i,j]))     # modelo logístico   } 
       a[i]~dnorm(mua,taua)    #priori para ai
       b[i]~dnorm(mub,taub)    #prior para bi              
       k[i]~dnorm(muk,tauk)    #prior para ki        } 
            mua~dnorm(mu(mua),tau(mua))      # priori para mua
            mub~dnorm(mu(mub),tau(mub))      # priori para mub 
            muk~dnorm(mu(muk),tau(muk))      # priori para muk

  taua~dgamma(mu(taua),tau(taua))     #priori para taua
  sigma2a<-1/sqrt(taua) 

  taubb~dgamma(mu(taub),tau(taub))    #priori para taub
  sigma2a<-1/sqrt(taub) 

  tauak~dgamma(mu(tauk),tau(tauk))    #priori para tauk
  sigma2a<-1/sqrt(tauk) 

  tau~dgamma(mu(tau),tau(tau))        #priori para tau
  sigma2a<-1/sqrt(tau)      } 

# Preparando os dados em formato de lista 
linedata<-list(Y=as.matrix(y),X=as.matrix(x),Nid = número de animais do grupo,
 N = número de observações por animal)
lineinits=function(){list(a=rep(a1,Nid),b=rep(b1,Nid),k=rep(k1,Nid),mua= mua1, 
mub= mub1, muk= muk1, taua= taua1, taub= taub1,tauk= tauk1,tau= tau1)}
parameters=c("a","b","c","mua","mub","muk","sigma2a","sigma2b","sigma2c","sigma2") 
lineout<-bugs(linedata,lineinits,parameters,linemodel, n.chains=1, n.iter=n1, n.burnin=n2,
 n.thin=n3, DIC=TRUE)

lineout$summary      #parameter estimates 

2-Rotinas utilizadas no software R considerando o ajuste do modelo Logístico aos dados individuais 
de peso-idade dos suínos via metodologia Frequentista.

#lendo dados longitudinais (peso x idade)
 setwd("diretório") dados=read.table("endereço completo do arquivo ",h=T)   

#ajuste individual das curvas de crescimento 
step1=by(dados, dados$id, function(x) nls(y ~ a/(1+b*exp(-k*x)), 
start = list(a=a1,b=b1, k=k1), data=x)) 
sapply(step1, coef)       #arquivando as estimativas dos parâmetros 
a=as.matrix(sapply(step1, coef)[1,]) 
b=as.matrix(sapply(step1, coef)[2,]) 
k=as.matrix(sapply(step1, coef)[3,]) 

genotipos=read.table"endereço completo do arquivo ",h=T) #lendo o arquivo de genótipos 
M=as.matrix(genotipos[,-(1)])    #definindo matriz de marcadores
trat=paste(M[,1],M[,2],sep="") 
table(trat) 
head(a)  
head(b) 
head(k) 
a_anova=lm(a~factor(trat)) 
anova(a_anova) 
b_anova=lm(b~factor(trat)) 
anova(b_anova) 
k_anova=lm(k~factor(trat)) 
anova(k_anova) 

 


© 2020 Universidade Federal de Viçosa - Todos os Direitos Reservados