r-fácil - r-facil.webnode.com¡cil... · deixe de conferir os demais materiais da séria r-fácil...

33
Universidade Federal de Goiás Escola de Veterinária e Zootecnia R-Fácil Testes de Hipóteses Apostila destinada a usuários do R, com demonstrações de uso de funções em exemplos da área de Ciências Agrárias. Goiânia Janeiro de 2014

Upload: vuongkien

Post on 25-Dec-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Universidade Federal de Goiás

Escola de Veterinária e Zootecnia

R-FácilTestes de Hipóteses

Apostila destinada a usuários do

R, com demonstrações de uso de funções

em exemplos da área de Ciências

Agrárias.

Goiânia

Janeiro de 2014

Apresentação

Atualmente encontram-se grande número de apostilas e livros abordando o uso do software

R (R Core Team, 2014) para análises estatísticas. No entanto, são raros os materiais didáticos

aplicados à área de ciências agrárias. Visando estimular o aprendizado com linguagem mais simples

e aplicada, com exemplos práticos voltados, principalmente, as áreas de ciências agrárias e

biológicas, o presente material foi desenvolvido para auxiliar a utilização do R na realização de

testes de hipóteses. O público alvo são alunos de graduação, pós-graduação, professores e

pesquisadores. O objetivo desta apostila não é aprofundar em aspectos teóricos, mas apenas

apresentar um tutorial de análise de dados utilizando pacotes e funções de forma bastante prática.

A apostila “R-fácil: Testes de Hipóteses” faz parte de uma séria de quatro apostilas que

contemplam parte do conteúdo do site http://r-facil.webnode.com/. Deve-se destacar que este material

utiliza-se de funções de uso mais prático para a demonstração das análises e por isso o título R-fácil,

com intuito de descomplicar um pouco a utilização do software.

No texto as discussões estão na fonte Times 12 e as análises realizadas no R em fonte

Inconsolata 14 em negrito, sendo a programação em azul e os resultados em preto. Boa leitura e não

deixe de conferir os demais materiais da séria R-fácil (download em http://r-facil.webnode.com/).

O autor

Índice

páginaTeste F 1Teste t 2 uma média 2 duas médias 3 dados pareados 5Teste de Wilcoxon 6 um grupo 6 dois grupos 8 dados pareados 9Teste de Kruskal-Wallis 10Teste de Friedman 12Teste Qui-quadrado 14aderência 14independência 16Teste Exato de Fisher 17Odds Ratio 19Teste Binomial 21 uma proporção 21 duas proporções 23Teste de Mcnemar 24Coeficiente de Kappa 25Referências 30

Teste F

O teste F é utilizado para avaliar a diferença entre duas variâncias obtidas de amostras

de duas populações.

Considere duas amostras (a,b) de duas populações abaixo. Será avaliado se as

variâncias destas populações podem ser consideradas estatisticamente iguais.

a=c(10,15,12,13,14,17,18)

b=c(2,10,32,13,14,16)

Obtendo as variâncias utilizando a função “var( )” e o teste F utilizando a função

“var.test( )”.

var(a)

[1] 7.809524

var(b)

[1] 97.5

var.test(b,a)

F test to compare two variances

data: b and a

F = 12.4848, num df = 5, denom df = 6, p-value = 0.007992

alternative hypothesis: true ratio of variances is not

equal to 1

95 percent confidence interval:

2.085114 87.114906

sample estimates:

ratio of variances

12.48476

1

Repare que a variância de “b” é muito superior a de “a”. O p-value foi menor que

0,05, então, rejeita-se H0, ou seja, as variâncias são estatisticamente diferentes. A

probabilidade de a diferença ter ocorrido ao acaso é menor que 0,05 (p-value = 0.007992).

Teste t

O teste t de Student é comumente utilizado para comparar um média amostral com

uma média populacional ou referência (teste t para uma média amostral). Também é muito

utilizado para comparar médias de duas populações (teste t para duas médias amostrais). E

ainda, também é utilizado para avaliar um grupo experimental ou amostral submetidos a uma

avaliação antes e depois de certo procedimento ou uma avaliação por duas técnicas ou

equipamentos no mesmo grupo (teste t para dados pareados).

Teste t para uma média

Para exemplificar usaremos exemplo de Kaps e Lamberson (2009), página 70, onde é

avaliado ("testado") se a média da produção de leite em kg de uma população de vacas é igual

a 4000 kg.

Abaixo seguem os dados de produção de leite de amostra de 10 vacas e a média

amostral.

dados=c(3000,3270,3400,3720,3780,3800,3940,4090,4300,4700)

mean(dados)

[1] 3800

Aplicando o teste para comparar se a média da população amostrada é estatisticamente

igual a 4000 kg, utiliza-se a função t.test( ) onde se inclui o conjunto de dados (primeiro

argumento da função) e o valor da média a ser comparada (mu=4000 neste caso).

2

t.test(dados, mu=4000)

One Sample t-test

data: dados

t = -1.2645, df = 9, p-value = 0.2378

alternative hypothesis: true mean is not equal to 4000

95 percent confidence interval:

3442.21 4157.79

sample estimates:

mean of x

3800

Assim, pode-se concluir que a média populacional pode ser considerada

estatisticamente igual a 4000 kg, pois p-value>0,05.

Teste t para duas médias

Em exemplo de Kaps e Lamberson (2009), foram injetadas gonodatropina e solução

salina em porcas. O objetivo foi determinar se a gonodatropina resultava em maior taxa de

ovulação. Seguem os dados da taxa de ovulação mensurada em dois grupos de animais:

Grupo tratado com gonodatropina:

gonodatropina=c(14,14,7,45,18,36,15)

Grupo tratado com solução salina:

salina=c(12,11,12,12,14,13,9)

Observando as médias (abaixo) temos que que a taxa de ovução média no grupo

tratado com gonodatropina é superior.3

mean(gonodatropina)

[1] 21.28571

mean(salina)

[1] 11.85714

Para testar (comparar estatisticamente) estas médias, primeiro deve-se fazer um teste F

para verificar se as variâncias das duas amostras são estatisticamente iguais (abaixo) onde se

conclui que as variâncias são estatisticamente diferentes, pois p<0,05.

var.test(gonodatropina,salina)

F test to compare two variances

data: gonodatropina and salina

F = 76.6923, num df = 6, denom df = 6, p-value = 4.183e-05

alternative hypothesis: true ratio of variances is not

equal to 1

95 percent confidence interval:

13.17792 446.33056

sample estimates:

ratio of variances

76.69231

Então se deve aplicar o teste t considerando variâncias diferentes. Abaixo segue

programação, onde é incluído as duas amostras (gonodatropina e salina e o argumento

var.equal=FALSE que indica variâncias diferentes).

4

t.test(gonodatropina,salina, var.equal = FALSE)

Welch Two Sample t-test

data: gonodatropina and salina

t = 1.7985, df = 6.156, p-value = 0.1209

alternative hypothesis: true difference in means is not

equal to 0

95 percent confidence interval:

-3.320571 22.177714

sample estimates:

mean of x mean of y

21.28571 11.85714

Apesar da diferença média aparentemente elevada, estatisticamente não se pode

considerar as médias diferentes, pois p-value>0,05. Caso as variâncias fossem

estatisticamente iguais, sugere-se "var.equal=TRUE".

Teste t para dados pareados

Neste teste tem-se duas avaliações em um mesmo grupo de elementos amostrais

(animais, pessoas, plantas, etc). Será utilizado exemplo de Kaps e Lamberson (2009) página

76, onde testou-se o efeito de um tratamento para elevar a produção diária de leite em vacas.

Para o experimento foi utilizado 9 vacas na mesma ordem de parição e estágio de lactação.

Avaliou-se a produção de leite antes e após a aplicação de um tratamento. Seguem os dados:

antes=c(27,45,38,20,22,50,40,33,18)

depois=c(31,54,43,28,21,49,41,34,20)

Utilizando a função t.test( ) com o argumento paired=TRUE aplica-se o teste t para

dados pareados, como programado a seguir.

5

t.test(antes,depois, paired=TRUE)

Paired t-test

data: antes and depois

t = -2.5534, df = 8, p-value = 0.034

alternative hypothesis: true difference in means is not

equal to 0

95 percent confidence interval:

-5.9208122 -0.3014101

sample estimates:

mean of the differences

-3.111111

Sendo p-value<0,05 tem-se efeito significativo do tratamento no aumento da produção

de leite.

Teste de Wilcoxon

O teste de Wilcoxon também conhecido como Mann-Whitney ou Teste U pode

substituir o teste t nas três situações vistas anteriormente. O teste t tem menor precisão quando

a variável em estudo não tem boa aproximação da normalidade ou se tratar de variável

qualitativa ordinal. Nestes casos recomenda-se utilizar o teste de Wicoxon.

Teste de Wilcoxon para comparar um grupo em relação a um valor referência

Considere um iogurte comercial A e uma nova versão teste B. Considere que a versão

A e B foram avaliadas por 17 testadores e que a nota dada considerando o sabor foi:

1 se inferior a A

2 se pouco inferior a A

3 se equivalente a A

4 se pouco superior a A

5 se superior a A

6

Os resultados obtidos foram:

resultados=c(3,4,4,3,5,2,5,4,3,2,5,3,4,3,4,5,2)

Abaixo segue a programação para realizar o teste de Wilcoxon e test t para avaliar se a

versão teste B é superior a versão original A. O argumento mu na função define a média

referência que se que comparar, no caso mu=3 é referente a “produto B equivalente ao

produto A”.

wilcox.test(resultados, mu=3)

Wilcoxon signed rank test with continuity

correction

data: resultados

V = 64.5, p-value = 0.04173

alternative hypothesis: true location is not equal to 3

t.test(resultados, mu=3)

One Sample t-test

data: resultados

t = 2.2792, df = 16, p-value = 0.03671

alternative hypothesis: true mean is not equal to 3

95 percent confidence interval:

3.041115 4.135356

sample estimates:

mean of x

3.588235

Conclui-se que B é superior a A com significância estatística nos dois testes (p<0,05).

Como se trata de uma variável qualitativa ordinal sugere-se utilizar o teste de Wilcoxon, onde

o valor de p foi 0,04173.

7

Teste de Wilcoxon para dois grupos independentes

Aqui será utilizado o mesmo exemplo do teste t para duas médias, pois os dois testes

são utilizados em situações semelhantes.

Em exemplo de Kaps e Lamberson (2009), foram injetadas gonodatropina e solução

salina em porcas. O objetivo foi determinar se a gonodatropina resultava em maior taxa de

ovulação. Seguem os dados da taxa de ovulação mensurada em dois grupos de animais:

Grupo tratado com gonodatropina:

gonodatropina=c(14,14,7,45,18,36,15)

Grupo tratado com solução salina:

salina=c(12,11,12,12,14,13,9)

Avaliando a normalidade das duas amostras (programação abaixo) conclui-se que as

mesmas têm aproximação da normalidade, pois o valor de p do teste de Shapiro-Wilk é maior

que 0,05. Neste caso o teste mais indicado é o teste t, pois se trata de uma variável

quantitativa com aproximação da normalidade. Porém, para ilustrar, será aplicado o teste de

Wilcoxon.

shapiro.test(gonodatropina)

Shapiro-Wilk normality test

data: gonodatropina

W = 0.8385, p-value = 0.09613

8

shapiro.test(salina)

Shapiro-Wilk normality test

data: salina

W = 0.9322, p-value = 0.5699

wilcox.test(gonodatropina, salina)

Wilcoxon rank sum test with continuity correction

data: gonodatropina and salina

W = 41, p-value = 0.03915

alternative hypothesis: true location shift is not equal to

0

Sendo o valor de probabilidade menor que 0,05 conclui-se pela diferença entre os dois

grupos.

Teste de Wilcoxon para dados pareados

Neste teste tem-se duas avaliações em um mesmo grupo de elementos amostrais

(animais, pessoas, plantas, etc). Será utilizado exemplo de Kaps e Lamberson (2009) página

76 (mesmo exemplo do teste t para dados pareados), onde testou-se o efeito de um tratamento

para elevar a produção diária de leite em vacas. Para o experimento foi utilizado 9 vacas na

mesma ordem de parição e estágio de lactação. Avaliou-se a produção de leite antes e após a

aplicação de um tratamento. Seguem os dados:

antes=c(27,45,38,20,22,50,40,33,18)

depois=c(31,54,43,28,21,49,41,34,20)

9

Utilizando a função wilcox.test( ) com o argumento paired=TRUE aplica-se o teste

como programado abaixo.

wilcox.test(antes,depois, paired=TRUE)

Wilcoxon signed rank test with continuity correction

data: antes and depois

V = 5, p-value = 0.04216

alternative hypothesis: true location shift is not equal to

0

Ocorre diferença estatisticamente significativa. Verificando a normalidade nos

resíduos (programação abaixo) verifica-se que os resíduos têm aproximação da normalidade

(p>0,05). Portanto, neste caso, o teste mais recomendado seria o teste t.

desvios=antes-depois

shapiro.test(desvios)

Shapiro-Wilk normality test

data: desvios

W = 0.9138, p-value = 0.3436

Teste de Kruskal-Wallis

O teste de Kruskal-Wallis pode substituir uma análise de variância em delineamento

inteiramente ao acaso em situações onde a variável resposta é qualitativa ordinal ou quando a

resposta é quantitativa e não atende pressuposições da análise de variância.

Como exemplo será simulado (programação abaixo) 3 tratamentos avaliados em 3

grupos de 6 animais. A variável resposta é o grau de doença sendo: 1= doença ausente;

2=doença em estágio inicial, 3=doença em estágio intermediário e 4=doença em estágio final.10

tratamentos=c(rep("medicamento_A",6),rep("medicamento_B",6)

, rep("placebo",6))

resposta=c(1,2,2,1,1,2,1,4,3,3,4,2,2,3,4,4,4,2)

dados=data.frame(tratamentos,resposta)

dados

tratamentos resposta

1 medicamento_A 1

2 medicamento_A 2

3 medicamento_A 2

4 medicamento_A 1

5 medicamento_A 1

6 medicamento_A 2

7 medicamento_B 1

8 medicamento_B 4

9 medicamento_B 3

10 medicamento_B 3

11 medicamento_B 4

12 medicamento_B 2

13 placebo 2

14 placebo 3

15 placebo 4

16 placebo 4

17 placebo 4

18 placebo 2

11

Para aplicar o teste será utilizado a função ea1( ) do pacote "easyanova" que deve ser

carregado previamente. Na função especifica-se o design que no caso é o de número 14,

referente ao teste de Kruskal-Wallis.

require(easyanova)

ea1(dados, design=14) #somente parte do resultado

$`Kruskal-Wallis Rank Sum Test`

Estimates

Kruskal-Wallis chi-squared = 7.1400

p.value = 0.0282

$`Ranks, Means and Medians`

treatment rank mean median t adjust.Holm adjust.Bonferroni adjust.fdr

1 placebo 12.5 3.1667 3.5 a a a a

2 medicamento_B 11.0 2.8333 3.0 a a ab a

3 medicamento_A 5.0 1.5000 1.5 b b b b

Com o resultado do teste verifica-se diferença estatística entre tratamentos (p=0,0282).

Posteriormente verifica-se a diferença par a par entre os tratamentos, onde é verificado

superioridade estatisticamente significativa do medicamento B em relação aos demais. É

recomendado utilizar alguma forma de ajuste no teste t e nas opções que o teste dispõe uma

possível recomendação é o ajuste f.d.r.

Teste de Friedman

O teste de Friedman pode substituir uma análise de variância em delineamento de

blocos ao acaso em situações onde a variável resposta é qualitativa ordinal ou quando a

resposta é quantitativa e não atende pressuposições da análise de variância.

No exemplo abaixo segue programação para obter conjunto de dados hipotéticos, onde

os tratamentos (quatro tipos de vinho) são avaliados por 5 provadores. A variável resposta é o

grau de qualidade da bebida sendo: 1=muito ruim, 2=ruim, 3=mediana, 4=boa, 5=muito boa.

vinhos=rep(c("Vinho_A","Vinho_B","Vinho_C","Vinho_D"),each=

5)

provadores=rep(c("a","b","c","d","e"),4)

resposta=c(4,5,4,5,3, 1,1,2,1,2, 1,1,3,4,1 ,3,5,4,5,3)

12

dados=data.frame(vinhos, provadores, resposta)

dados

vinhos provadores resposta

1 Vinho_A a 4

2 Vinho_A b 5

3 Vinho_A c 4

4 Vinho_A d 5

5 Vinho_A e 3

6 Vinho_B a 1

7 Vinho_B b 1

8 Vinho_B c 2

9 Vinho_B d 1

10 Vinho_B e 2

11 Vinho_C a 1

12 Vinho_C b 1

13 Vinho_C c 3

14 Vinho_C d 4

15 Vinho_C e 1

16 Vinho_D a 3

17 Vinho_D b 5

18 Vinho_D c 4

19 Vinho_D d 5

20 Vinho_D e 3

Observe no objeto “dados”a ordem das colunas, primeiro os tratamentos, depois os

blocos (provadores) e depois a variável resposta

13

Aplica-se o teste, utilizando a função ea1( ) com o argumento design=15, indicando

que será feito o teste de Friedman. Não esqueça que o pacote “easyanova” deve estar

carregado para utilizar a função.

require(easyanova)

ea1(dados, design=15) #somente parte do resultado

$`Friedman Rank Sum Test`

Estimates

Friedman chi-squared = 12.120

p.value = 0.007

$`Ranks, Means and Medians`

treatment rank mean median non.adjusted adjust.Holm adjust.Bonferroni adjust.fdr

1 Vinho_A 18 4.2 4 a a a a

2 Vinho_D 17 4.0 4 a ab ab a

3 Vinho_C 8 2.0 1 b ab ab b

4 Vinho_B 7 1.4 1 b b b b

Com o resultado do teste verifica-se diferença estatística entre tratamentos (p=0,007).

Posteriormente verifica-se a diferença par a par entre os tratamentos (vinhos). É recomendado

utilizar alguma forma de ajuste no valor de probabilidade e nas opções que o teste dispõe uma

possível recomendação é o ajuste f.d.r.

Teste Qui-quadrado

O teste qui-quadrado é utilizado para avaliar uma distribuição de freqüência. Pode-se

utilizá-lo comumente em duas situações que serão abordadas a seguir.

Qui-quadrado para aderência

Este teste pode ser utilizado para testar se uma proporção observada é estatisticamente

igual a uma proporção esperada.

14

Em exemplo de Sampaio (2010) página 113, o autor informa que a pelagem de

Porquinho-da-índia é produto de dois pares de genes. O animal caramelo tem genótipo AABB

e o marrom aabb. O cruzamento entre eles resulta em uma geração F1 AaBb com animais

caramelo. A geração F2 (F1 x F1) resulta em animais esperados nas proporções 9:3:3:1,

sendo, 9 na cor caramelo (A_B_), 3 na cor preta (aaB_), 3 na cor canela (A_bb) e 1 na cor

marrom (aabb). Em estudo de pelagem de 480 filhotes F2, foram observados 260 na cor

caramelo, 98 na cor preta, 87 na cor canela e 35 na cor marrom. Avaliaremos se a diferença

dos valores observados em relação aos valores esperados ocorrem devido ao acaso.

Valores observados.

o=c(260,98,87,35)

Probabilidade dos valores esperados

e=c(9/16,3/16,3/16,1/16)

e

Valores esperados

480*e

Teste Qui-quadrado para aderência

chisq.test(o,p=e)

Chi-squared test for given probabilities

data: o

X-squared = 2.0148, df = 3, p-value = 0.5693

Como p-value>0,05 não se rejeita H0, ou seja, o valor observado não foi exatamente

igual ao esperado devido ao acaso.

15

Qui-quadrado para independência

Este teste avalia se a frequência de uma variável X depende de uma variável Y. Será

considerado um exemplo de Sampaio (2010) página 118 onde será avaliado se a prenhez de

éguas depende do diluente. Neste exemplo um diluente A foi avaliado em 30 éguas sendo os

resultados de prenhez 17(+) e 13(-). Um diluente B também foi avaliado em 30 éguas sendo

os resultados de prenhez 25(+) e 5(-).

Entrada dos dados (forma de matriz)

dados=matrix(c(17,25,13,5), ncol=2)

dados

[,1] [,2]

[1,] 17 13

[2,] 25 5

Pode-se inserir nomes na matriz

colnames(dados)=c("Prenhez_Positiva","Prenhez_Negativa")

rownames(dados)=c("Diluente_A","Diluente_B")

dados

Prenhez_Positiva Prenhez_Negativa

Diluente_A 17 13

Diluente_B 25 5

Teste qui-quadrado (é feito a correção de Yates por padrão)

chisq.test(dados)

Pearson's Chi-squared test with Yates' continuity

correction

data: dados

X-squared = 3.8889, df = 1, p-value = 0.04861

16

Teste qui-quadrado (sem a correção de Yates)

chisq.test(dados, correct = FALSE)

Pearson's Chi-squared test

data: dados

X-squared = 5.0794, df = 1, p-value = 0.02421

Em ambos os casos p-value<0,05 e, portanto, conclui-se que a prenhez depende do

diluente.

Observação: sugere-se não utilizar o teste qui-quadrado em amostras pequenas (n<20)

e no caso em que uma das freqüências esperadas seja menor que 5. Em amostras com n>20 e

n<40 a correção de Yates deve ser usada. Essa é uma regra geral e um teste que pode ser

utilizado para substituir o qui-quadrado neste casos é o teste exato de Fisher, abordado a

seguir.

Teste Exato de Fisher

Este teste avalia se a freqüência de uma variável X depende de uma variável Y. É

utilizado geralmente em situações onde o teste qui-quadrado para independência não é

recomendado (amostras pequenas, em geral com n<20 e no caso em que uma das freqüências

esperadas seja menor que 5).

Será considerado exemplo de Sampaio (2010) página 118 (o mesmo utilizado para

exemplificar o qui-quadrado para independência) onde será avaliado se a prenhez de éguas

depende do diluente. Neste exemplo um diluente A foi avaliado em 30 éguas sendo os

resultados de prenhez 17(+) e 13(-). Um diluente B também foi avaliado em 30 éguas sendo

os resultados de prenhez 25(+) e 5(-).

Entrada dos dados (forma de matriz)

dados=matrix(c(17,25,13,5), ncol=2)

17

dados

[,1] [,2]

[1,] 17 13

[2,] 25 5

Pode-se inserir nomes na matriz (tabela)

colnames(dados)=c("Prenhez_Positiva","Prenhez_Negativa")

rownames(dados)=c("Diluente_A","Diluente_B")

dados

Prenhez_Positiva Prenhez_Negativa

Diluente_A 17 13

Diluente_B 25 5

Realizando o teste Exato de Fisher

fisher.test(dados)

Fisher's Exact Test for Count Data

data: dados

p-value = 0.04702

alternative hypothesis: true odds ratio is not equal to 1

95 percent confidence interval:

0.06254638 0.98558345

sample estimates:

odds ratio

0.267663

Como o p-value<0,05 conclui-se que a prenhez depende do diluente.18

Odds Ratio (Razão de Chances)

A odds ratio ou razão de chances quantifica a probabilidade de um evento ocorrer em

um grupo em relação a outro (ou outros) grupo(s). É na verdade uma medida que quantifica o

grau associação entre variáveis.

Pode ser usada nas mesmas situações que o teste qui-quadrado para independência.

Nestes casos o teste qui-quadrado testa se existe uma dependência (associação) entre variáveis

e a odds ratio quantifica este grau de associação.

Será considerado exemplo de Sampaio (2010) página 118 (o mesmo utilizado para

exemplificar o qui-quadrado para independência) onde será avaliado se a prenhez de éguas

depende do diluente. Neste exemplo um diluente A foi avaliado em 30 éguas sendo os

resultados de prenhez 17(+) e 13(-). Um diluente B também foi avaliado em 30 éguas sendo

os resultados de prenhez 25(+) e 5(-).

Entrada dos dados (forma de matriz)

dados=matrix(c(17,25,13,5), ncol=2)

dados

[,1] [,2]

[1,] 17 13

[2,] 25 5

Pode-se inserir nomes na matriz (tabela)

colnames(dados)=c("Prenhez_Positiva","Prenhez_Negativa")

rownames(dados)=c("Diluente_A","Diluente_B")

dados

Prenhez_Positiva Prenhez_Negativa

Diluente_A 17 13

Diluente_B 25 5

Para obter a odds vamos requerer o pacote "epitools" que deve estar instalado previamente.

require(epitools)

19

Realizando a odds ratio a seguir

oddsratio(dados)

$data

Prenhez_Positiva Prenhez_Negativa Total

Diluente_A 17 13 30

Diluente_B 25 5 30

Total 42 18 60

$measure

NA

odds ratio with 95% C.I. estimate lower upper

Diluente_A 1.0000000 NA NA

Diluente_B 0.2715598 0.07330721 0.8759577

$p.value

NA

two-sided midp.exact fisher.exact chi.square

Diluente_A NA NA NA

Diluente_B 0.02857265 0.04702233 0.02421223

A odds estimada foi de 0,27, ou seja, uma égua inseminada com o diluente B tem 0,27

menos chance de não prenhez que uma égua inseminada com o diluente A. No entanto é mais

interessante interpretar a odds com valores maiores que 1 e para isso faremos o seguinte:

oddsratio(dados, rev="c")

20

$data

Prenhez_Negativa Prenhez_Positiva Total

Diluente_A 13 17 30

Diluente_B 5 25 30

Total 18 42 60

$measure

NA

odds ratio with 95% C.I. estimate lower upper

Diluente_A 1.000000 NA NA

Diluente_B 3.682407 1.141608 13.64122

$p.value

NA

two-sided midp.exact fisher.exact chi.square

Diluente_A NA NA NA

Diluente_B 0.02857265 0.04702233 0.02421223

A odds estimada neste caso foi de 3,68, ou seja, existe 3,68 mais chance de prenhez

quando utilizado o diluente B em relação ao diluente A. Essa seria a melhor maneira de

apresentar a odds (com valores acima de 1), que foi significativa (p-value<0,05).

Teste Binomial

O teste binomial pode ser utilizado para comparar uma ou duas proporções,

exemplificadas a seguir.

Teste binomial para uma proporção

Considere uma situação onde a incidência de uma determinada doença em amostra de

260 indivíduos foi de 26 (26/260 = 0,10). Caso a incidência na amostra seja estatisticamente

igual a 0,15 deverá se proceder a práticas de controle da doença. Então, com base nos dados21

amostrais, pode-se utilizar o teste binomial para testar se a freqüência amostral é

estatisticamente igual a 0,15.

Entrada de dados (freqüência da doença +/-)

freq=c(26, 260-26)

Porcentagem de indivíduos doentes

100*26/260

[1] 10

Na função deve-se inserir a freqüência de sucessos e insucessos e, fornecer o valor de

p que se pretende comparar (no caso 0,15).

binom.test(freq, p=0.15)

Exact binomial test

data: freq

number of successes = 26, number of trials = 260, p-value =

0.02358

alternative hypothesis: true probability of success is not

equal to 0.15

95 percent confidence interval:

0.06636889 0.14308479

sample estimates:

probability of success

0.1

Neste caso conclui-se que a freqüência deve ser inferior a 0,15 (15%) (p=0,0236).

22

Teste binomial para duas proporções

Considere que a incidência de uma doença em dois estados do Brasil foi de 22 positivos

em 123 indivíduos avaliados no estado A e 29 positivos em 231 avaliados no estado B. Com

base nestas informações pode-se utilizar o teste binomial para duas proporções para comparar

se a incidência da doença no estado A é estatisticamente igual a do estado B.

Entrada de dados

freq1=c(22,29) # incidência de positivos

freq2=c(123,231) # tamanho das amostras

Aplicação do teste

prop.test(freq1,freq2)

2-sample test for equality of proportions with continuity

correction

data: freq1 out of freq2

X-squared = 1.4434, df = 1, p-value = 0.2296

alternative hypothesis: two.sided

95 percent confidence interval:

-0.03298744 0.13962877

sample estimates:

prop 1 prop 2

0.1788618 0.125

Com o resultado conclui-se que a incidência de doença nos dois estados é

estatisticamente a mesma (p>0,05).

23

Teste de McNemar

O teste de McNemar é utilizado para avaliar a concordância entre categorias de duas

variáveis qualitativas dicotômicas (variável que possui duas categorias). Pode ser utilizado

para testar a concordância entre dois testes ou duas avaliações aplicados nos mesmos

indivíduos (ou elementos amostrais). Também pode ser usado para testar se ocorreu mudança

de resultado (frequência) em uma avaliação "antes" e "depois" da aplicação de um tratamento.

Exemplo 1: Considere dois métodos diagnósticos para detectar determinada doença em cães,

aplicados em amostra de 200 animais. Os resultados (dados hipotéticos) foram:

p="positivo"

n="negativo"

mA=c(rep(p,182),rep(n,18))

mB=c(rep(p,175),rep(n,25))

Criação de uma tabela com os dados

tabela=table(mA,mB)

tabela

mB

mA negativo positivo

negativo 18 0

positivo 7 175

Observe que ocorreram sete resultados discordantes (positivo para mA e negativo para mB).

O teste avalia se a discordância é estatisticamente significativa.

mcnemar.test(tabela)

McNemar's Chi-squared test with continuity correction

data: tabela

McNemar's chi-squared = 5.1429, df = 1, p-value = 0.02334 24

Como o valor de probabilidade foi menor que 0,05, conclui-se que a discordância

entre o diagnóstico dos métodos é estatisticamente significativa.

Exemplo 2: Considere um tratamento para uma doença X em cães, aplicados em amostra de

200 animais. Os resultados "antes" e "depois" do tratamento (dados hipotéticos) foram:

b="bem"

m="mal"

antes=c(rep(m,182),rep(b,18))

depois=c(rep(m,185),rep(b,15))

Criação de uma tabela com os dados

tabela=table(antes,depois)

tabela

depois

antes bem mal

bem 15 3

mal 0 182

Observe que ocorreram três resultados discordantes (três animais que estavam "bem" antes do

tratamento passaram a ser classificados como "mal" depois).

O teste avalia se a discordância é estatisticamente significativa

mcnemar.test(tabela)

McNemar's Chi-squared test with continuity correction

data: tabela

McNemar's chi-squared = 1.3333, df = 1, p-value = 0.2482

Como o valor de probabilidade foi maior que 0,05 (0,2482), conclui-se que o

tratamento não teve efeito estatisticamente significativo.

25

Abaixo segue modificação no exemplo com efeito significativo do tratamento.

b="bem"

m="mal"

antes=c(rep(m,182),rep(b,18))

depois=c(rep(m,20),rep(b,180))

tabela=table(antes,depois)

tabela

depois

antes bem mal

bem 18 0

mal 162 20

mcnemar.test(tabela)

McNemar's Chi-squared test with continuity correction

data: tabela

McNemar's chi-squared = 160.0062, df = 1, p-value < 2.2e-16

Coeficiente de Kappa

O coeficiente de Kappa é uma medida de concordância entre resultados qualitativos,

geralmente utilizado como medida de concordância entre testes diagnósticos e avaliações

clínicas.

Exemplo: Considere três métodos diagnóstico para detectar determinada doença em cães,

aplicados em amostra de 200 animais. Os resultados (dados hipotéticos) foram:

p="positivo"

n="negativo"

mA=c(rep(p,182),rep(n,18))

mB=c(rep(p,175),rep(n,25))

mC=c(rep(p,186),rep(n,14))

26

Criação de tabelas com os dados

tabela1=table(mA,mB)

tabela1

mB

mA negativo positivo

negativo 18 0

positivo 7 175

tabela2=table(mA,mC)

tabela2

mC

mA negativo positivo

negativo 14 4

positivo 0 182

tabela3=table(mB,mC)

tabela3

mC

mB negativo positivo

negativo 14 11

positivo 0 175

Abaixo a obtenção do Coeficiente de Kappa para avaliar a concordância entre os

métodos. (observação: para usar a função é necessário requerer o pacote "epicalc", que deve

estar previamente instalado)

require(epicalc)

27

kap(tabela1)

Table for calculation of kappa

mB

mA negativo positivo

negativo 18 0

positivo 7 175

Observed agreement = 96.5 %

Expected agreement = 80.75 %

Kappa = 0.818

Standard error = 0.07 , Z = 11.767 , P value = < 0.001

kap(tabela2)

Table for calculation of kappa

mC

mA negativo positivo

negativo 14 4

positivo 0 182

Observed agreement = 98 %

Expected agreement = 85.26 %

Kappa = 0.864

Standard error = 0.07 , Z = 12.337 , P value = < 0.001

kap(tabela3)

Table for calculation of kappa

mC

mB negativo positivo

negativo 14 11

positivo 0 175

28

Observed agreement = 94.5 %

Expected agreement = 82.25 %

Kappa = 0.69

Standard error = 0.067 , Z = 10.265 , P value = < 0.001

Quanto mais próximo de 1 o valor de Kappa maior a concordância entre resultados.

Como p < 0,05 o valor de concordância estimado em todos os pares é estatisticamente

significativo.

Para obter uma concordância geral entre todos os métodos pode-se fazer como

programado abaixo.

kap.m.raters(data.frame(mA,mB,mC))

kappa std.error z p.value

0.787 0.041 19.27 < 0.001

29

Referências

KAPS, M. and LAMBERSON, W. R. Biostatistics for Animal Science: an

introductory text. 2nd Edition. CABI Publishing, Wallingford, Oxfordshire, UK,

2009. 504p.

SAMPAIO, I. B. M. Estatistica aplicada a experimentacao animal. 3nd Edition.

Belo Horizonte: Editora FEPMVZ, Fundacao de Ensino e Pesquisa em Medicina

Veterinaria e Zootecnia, 2010. 264p.

R-Fácil (2014)

URL http://r-facil.webnode.com/

R Core Team (2014). R: A language and environment for statistical computing.

R Foundation for Statistical Computing, Vienna, Austria. URL

http://www.R-project.org/ .

30