[R-br] Converter dados de contagem em binomial

ASANTOS alexandresantosbr em yahoo.com.br
Quarta Dezembro 11 01:08:24 BRST 2013


Walmes,

        Solicitei desta maneira porque eu achava que em análises de 
sobrevivência, como no meu caso que utilizo o modelo de Weibull com a 
função survreg() do pacote survival, fosse necessário informar o número 
de indivíduos vivos (zeros) ao final do tempo experimental para se 
efetuar os ajustes e se ter um correto número de graus de liberdade.
        E você tem razão sim, avalio a mesma unidade experimental em 
determinados intervalos no tempo, como no exemplo postado abaixo, tenho 
200 formigas em 2 tratamentos (100 formigas por tratamento - T1 e T2) e 
acompanhei a mortalidade durante 17 dias a cada 24 horas e acho que se 
encaixam na questão levanta por você, segue CRM:

#-------------------------------------------------------------------------------
# Download dos dados no dropbox
links <- c(
"https://www.dropbox.com/s/adawrlwws1ro7te/mortalidadeAtta3.txt")

tokens    <- gsub("^.*/s/","",dirname(links))
fileNames <- basename(links)
newLinks  <- file.path("http://dl.dropbox.com/s", tokens, fileNames); 
newLinks

for (a in newLinks) {
           tryCatch(download.file(a, dest=basename(a), mode='wb'),
                               error=function(...) print("Falha no 
download!"))}



# Leitura dos dados --------------------------------------------------------

dados<-read.table("mortalidadeAtta3.txt", h=T)



# Converte para notação binomial ------------------------------------

dados$z<-1
dados2 <- dados[rep(1:nrow(dados), dados$mort),]


# Ajuste GLM binomial -----------------------------------------------------

m0 <- glm(cbind(yes=mort, no=100-mort)~trat*tempo, dados, family=binomial)
summary(m0)


# Ajuste análise de sobrevivência de Weibull -----------------------

require(survival)

m1<-survreg(Surv(dados$tempo,dados$z)~dados$trat)
summary(m1)

#END 
---------------------------------------------------------------------------

Abraço,

-- 
======================================================================
Alexandre dos Santos
Proteção Florestal
IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
Campus Cáceres
Caixa Postal 244
Avenida dos Ramires, s/n
Bairro: Distrito Industrial
Cáceres - MT                      CEP: 78.200-000
Fone: (+55) 65 8132-8112 (TIM)   (+55) 65 9686-6970 (VIVO)
e-mails:alexandresantosbr em yahoo.com.br
         alexandre.santos em cas.ifmt.edu.br
Lattes: http://lattes.cnpq.br/1360403201088680
======================================================================










Em 10/12/2013 16:20, walmes . escreveu:
> Eu não sei exatamente porque você precisa dos dados dessa maneira, mas 
> se é para correr um glm() binomial, basta que você tenha um vetor com 
> o número de mortos e outro com o número de vivos. Não precisar estar 
> em binário {0,1} não.
>
> tot <- 212
> da <- expand.grid(trat=gl(3,4), tempo=1:5)
> da$y <- rbinom(nrow(da), size=212, prob=0.5)
>
> m0 <- glm(cbind(yes=y, no=212-y)~trat*tempo, da, family=binomial)
> summary(m0)
>
> Agora eu tive a impressão pelo seu texto de que você observa os 
> insetos mortos em intervalos de tempo na mesma unidade experimental. 
> Dessa maneira, no tempo i+1 jamais terá menos insetos mortos que o 
> tempo i. As observações são tomadas na mesma unidade experimental. 
> Esse experimento não pode deve analisado como um glm() com n=212 para 
> todas as observações. Um caso exatamente igual ao seu experimento (se 
> eu estiver correto) é o de índice de germinação de sementes. Por 
> exemplo, 100 sementes são semeadas e a cada dia observa-se o número de 
> germinadas. No dia 1 você tem n=100, se nasceram 5, para o dia 2 deve 
> usar n=95 e não n=100. Em outras palavras, a cada acesso no tempo você 
> tem uma binomial cujo n é o n-y do tempo anterior, ou seja, n[i+1] = 
> n[i]-y[i], em que y[i] é o número de germinadas no tempo i. Os artigos 
> da área aplicada fazem análise sem considerar esse importante fato 
> (considerar n=100 para todos os tempos) é isso pode comprometer as 
> conclusões.
>
> Outra forma de analisar os mesmos dados é ao invés de considerar o 
> número germinadas no tempo i, é considerar o tempo necessário para 
> germinar. Ambas análises (glm e sobrevivência) vão fornecer 
> praticamente o mesmo resultado que do meu ponto de vista é saber qual 
> o número esperado para quantidade de sementes germinadas em cada 
> instante i. No glm você modela o p e multiplica por n para ter o 
> número esperado de sementes em cada i. Na sobrevivência você ajusta o 
> modelo e partir do ajuste obtém os quantis que dão a proporção de 
> indivíduos que germinam à cada tempo. Eu confesso que sou curioso para 
> comparar às duas abordagens. Será que os seus dados não servem para isso?
>
> À disposição.
> Walmes.
>
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20131211/d944195b/attachment.html>


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