[R-br] Teste de diferça entre proporções via loop

FHRB Toledo fernandohtoledo em gmail.com
Quarta Março 23 17:53:20 BRT 2016


Meu centavo:

> dados <- read.table(file = 'data_test.txt', header = TRUE, sep= '\t')
> dados <- plyr::ddply(.data = dados, .variables = .(AREA), .fun = mutate,
                       pvalor = prop.test(x = c(X1, X2), n = c(N, N),
correct = FALSE)$p.value)

att,
FH

2016-03-23 14:33 GMT-06:00 Cesar Rabak <cesar.rabak em gmail.com>:

> Como sugestão para um código mais enxuto, o objetivo poderia ser atingido
> com a aplicação da função apply:
>
> > dados <- read.table("data_test.txt", header=T, sep= "\t")
> > dados$p_valor <- apply(dados[,2:4], 1, function(linha)
> prop.test(x=c(linha[1],linha[2]),n=c(linha[3],linha[3]), correct=F)$p.value)
> > dados
>   AREA   X1   X2     N       p_valor
> 1    1 1982 9416 11398  0,000000e+00
> 2    2 6546 4084 10630 5,362948e-250
> 3    3 3418  667 40850  0,000000e+00
> 4    4 1503 4408 59110  0,000000e+00
> 5    5  966  339 30500  6,472911e-69
>
> Ademais, se o OP tiver que resolver problemas dessa natureza com
> frequência, pode ser que valha a pena examinar alguns pacotes que têm
> funções para facilitar esse tipo de resumos, como, por exemplo, os pacotes
> *descr* e *reporttools*.
>
> HTH
> --
> Cesar Rabak
>
>
> On Wed, Mar 23, 2016 at 1:46 PM, Daniel Tiezzi <dtiezzi em usp.br> wrote:
>
>> Boa tarde Wagner
>>
>> Supondo que seus dados esteja uma tabela data_test (em anexo)
>>
>> acho que você pode resolver assim
>>
>>
>> data<- read.table(“data_test.txt”, header=T, sep= “\t”)
>>
>> data_df <- as.data.frame(data)
>>
>> res<- list()
>>
>> for (i in 1:nrow(data)) {
>>   y<- prop.test(x = c(data$X1[i], data$X2[i]), n = c(data$N[i],
>> data$N[i]), correct = FALSE)
>>   x= y$p.value
>>   res[[paste0(i)]] <- x
>> }
>>
>> result <- t(as.data.frame(res))
>>
>> data_df1 <- cbind(data_df, result)
>>
>> data_df1
>>
>>
>> Espero que funcione
>>
>>
>> daniel
>>
>>
>>
>> Daniel Tiezzi, MD, PhD
>> Professor Associado
>> Departamento de Ginecologia e Obstetrícia
>> Setor de Mastologia e Oncologia Ginecológica
>> Faculdade de Medicina de Ribeirão Preto - USP
>> Tel.: 16 3602-2488
>> e-mail: dtiezzi em fmrp.usp.br
>>
>>
>>
>>
>>
>> On Mar 23, 2016, at 3:50 PM, Wagner Tassinari <wtassinari em gmail.com>
>> wrote:
>>
>> AREA    X1      X2       N       p_valor
>> 1        1982    9416    11398      ?
>> 2        6546    4084    10630      ?
>> 3        3418    667       4085       ?
>> 4        1503    4408      5911       ?
>> 5        966        339       305       ?
>>
>>
>>
>> _______________________________________________
>> 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.
>>
>
>
> _______________________________________________
> 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/20160323/b5e6ed56/attachment.html>


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