Digamos que temos as estatísticas abaixo
gender mean sd n
f 1.666667 0.5773503 3
m 4.500000 0.5773503 4
Como você executa um teste t de duas amostras (para ver se há uma diferença significativa entre as médias de homens e mulheres em alguma variável) usando estatísticas como essa em vez de dados reais?
Não consegui encontrar em nenhum lugar da internet como fazer isso. A maioria dos tutoriais e até o manual lidam com o teste apenas com o conjunto de dados real.
?pt
) - veja especialmentept()
- têm todas as informações necessárias para você fazer isso sozinho. E você aprenderá muito sobre estatísticas e R se fizer isso.tsum.test
função no pacote BSDA , que implementa um teste t (duas amostras; Welch ou variação igual e também uma amostra) a partir dos dados resumidos que você fornece. Basicamente, funciona como o teste t no vanilla R, mas nas informações resumidas.tsum.test()
a doBSDA library
declarado por @Nick Cox. Ele faz exatamente a mesma coisa que o @macro escreveu em linhas de código. Se a pergunta for feita, qual é o entendimento do cálculo de segundo plano para calcular a estatística do teste t em R, então Marco seria uma resposta mais apropriada. Observe que não estou tentando ofender ninguém, apenas afirmando minha opinião pessoal relacionada à minha formação profissional. E @marco que é alguma limpo codificação :)Respostas:
Você pode escrever sua própria função com base no que sabemos sobre a mecânica do teste duas amostrast . Por exemplo, isso fará o trabalho:
fonte
t.test
foi rejeitado, então aqui está um código para confirmar:(tt2 <- t.test2(mean(x1), mean(x2), sd(x1), sd(x2), length(x1), length(x2))); (tt <- t.test(x1, x2)); tt$statistic == tt2[["t"]]; tt$p.value == tt2[["p-value"]]
A diferença esperada é provavelmente zero.
Se você deseja o valor p, basta usar a
pt()
função:Assim, reunindo o código:
Isso pressupõe variações iguais, o que é óbvio porque elas têm o mesmo desvio padrão.
fonte
R
Você pode fazer os cálculos com base na fórmula do livro (na página da web) ou pode gerar dados aleatórios com as propriedades declaradas (consulte a
mvrnorm
função noMASS
pacote) e usar at.test
função regular nos dados simulados.fonte
mvrnorm
função noMASS
pacote (você precisa definir o argumento empírico como TRUE).A pergunta é sobre R, mas o problema pode surgir com qualquer outro software estatístico. O Stata, por exemplo, possui vários comandos chamados imediatos, que permitem cálculos apenas de estatísticas resumidas. Consulte http://www.stata.com/manuals13/rttest.pdf para o caso específico do
ttesti
comando, que se aplica aqui.fonte