[R-br] RES: RES: [R-br Teste de diferça entre proporções via loop
Mauro Sznelwar
sznelwar em uol.com.br
Segunda Março 28 00:00:17 BRT 2016
Continua não dando certo. Acho que é o modo como coloquei o banco de dados, coloquei assim:
AREA X1 X2 N
1 1982 9416 11398
2 6546 4084 10630
3 3418 667 4085
4 1503 4408 5911
5 966 339 305
Eu não sei do que se trata os seus dados, mas o teste que vc está aplicando diz que os valores de N são menores que o de X.
Tente rodar apenas nas duas primeiras linhas. Vai funcionar.
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 26, 2016, at 8:24 PM, Mauro Sznelwar <sznelwar em uol.com.br> wrote:
Por que não estou conseguindo rodar?
> 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)
Error in prop.test(x = c(linha[1], linha[2]), n = c(linha[3], linha[3]), :
elements of 'x' must not be greater than those of 'n'
> dados
AREA X1 X2 N
1 1 1982 9416 11398
2 2 6546 4084 10630
3 3 3418 667 4085
4 4 1503 4408 5911
5 5 966 339 305
>
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 < <mailto:dtiezzi em usp.br> 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: <mailto:dtiezzi em fmrp.usp.br> dtiezzi em fmrp.usp.br
On Mar 23, 2016, at 3:50 PM, Wagner Tassinari < <mailto:wtassinari em gmail.com> 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 ?
_____
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> Imagem removida pelo remetente. Avast logo
Este email foi escaneado pelo Avast antivírus.
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> www.avast.com
_______________________________________________
R-br mailing list
<mailto:R-br em listas.c3sl.ufpr.br> R-br em listas.c3sl.ufpr.br
<https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-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> http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
---
Este email foi escaneado pelo Avast antivírus.
https://www.avast.com/antivirus
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160328/fa8c981e/attachment.html>
-------------- Próxima Parte ----------
Um anexo não-texto foi limpo...
Nome: ~WRD178.jpg
Tipo: image/jpeg
Tamanho: 823 bytes
Descrição: não disponível
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160328/fa8c981e/attachment.jpg>
Mais detalhes sobre a lista de discussão R-br