ESTATÍSTICA NÃO PARAMÉTRICA

PRÁTICA 2: O CASO DE UMA AMOSTRA

\[\\[0.05in]\]

1 PACOTES NECESSÁRIOS

Para esta segunda aula prática de Estatística Não Paramétrica, precisaremos do seguinte pacote:

require(BSDA) # Faz o teste do sinal

2 TESTE BINOMIAL

Para fazer o teste binomial no R, basta utilizar a função binom.test() do pacote base stats. Essa função tem os seguintes argumentos:

  • x = número de sucessos.
  • n = tamanho da amostra.
  • p = proporção esperada sob \(H_0\).
  • alternative = direção do teste: “two.sided”, “less”, “greater”.
  • conf.level = nível de confiança do intervalo

O intervalo de confiança calculado para a proporção p é dado pelo método de Clopper e Pearson (1934). Este intervalo se baseia na distribuição binomial para calcular os limites do intervalo de confiança. Em vez de usar aproximações, como a normal, este método utiliza a distribuição binomial exata, garantindo que o intervalo de confiança seja verdadeiramente exato.

A função binom.test retorna as seguintes saídas:

  • number of sucesses = número de sucessos.
  • number of trials = tamanho da amostra.
  • p-value = valor-p.
  • alternative hypothesis = hipótese alternativa.
  • sample estimates = estimativa amostral da proporção.

2.1 EXEMPLO: PROCEDIMENTO CIRÚRGICO

Um procedimento cirúrgico padrão tem uma taxa de sucesso de 0,5. Um cirurgião reivindica uma nova técnica que melhora a taxa de sucesso. Em 20 aplicações da nova técnica, são, obtidos 14 sucessos. Há evidências para apoiar a afirmação do cirurgião a um nível de \(\alpha = 5\)%?

Do enunciado, obtem-se que a proporção esperada é p=0,5. Além disso, tem-se uma amostra de tamanho n=20 e foram obtidos 14 sucessos. Para fazer o teste de hipótese unilateral a direita, com um nível \(\alpha = 5\)%, tem-se os códigos:

Teste  = binom.test(x=14,
                    n=20,
                    p=0.5,
                    alternative = "greater")
Teste
## 
##  Exact binomial test
## 
## data:  14 and 20
## number of successes = 14, number of trials = 20, p-value = 0.05766
## alternative hypothesis: true probability of success is greater than 0.5
## 95 percent confidence interval:
##  0.4921816 1.0000000
## sample estimates:
## probability of success 
##                    0.7

Assim, com um valor-p de 0,05766 não rejeita-se a hipótese nula de que a taxa de sucesso. Assim, há evidências de que a taxa de sucesso não é maior que 0,5

3 TESTE DO SINAL

Para fazer o teste do sinal no R, basta utilizar a função SING.test do pacote BSDA. Essa função tem os seguintes argumentos:

  • x = vetor com as observações amostrais.
  • md = mediana esperada sob \(H_0\).
  • alternative = direção do teste: “two.sided”, “less”, “greater”.
  • conf.level = nível de confiança do intervalo.

Para um nível de confiança \(1-\alpha\), o objetivo é encontrar os percentis da distribuição binomial(n,0.5) que delimitam o intervalo. Entretanto, como a distribuição binomial é discreta, é difícil obter um intervalo com o nível de confiança \(1-\alpha\) de forma exata. A função SIGN.test faz, portanto, uma interpolação para aproximar o intervalo com o nível de confiança estipulado.

A SIGN.test retorna as seguintes saídas:

  • s = número de sinais positivos
  • p-value = valor-p
  • alternative hypothesis = hipótese alternativa.
  • percent confidence interval = intervalo de confiança interpolado
  • sample estimates = estimativa amostral da mediana.
  • Achieved and Interpolated Confidence Intervals = Os intervalos obtidos de forma exata e a interpolação obtida.

3.1 EXEMPLO: ALTURA POPULACIONAL

Vamos testar se a mediana da população de alturas é igual a 170 cm, usando uma amostra de 10 indivíduos com as seguintes alturas (em cm):

165,172,169,174,170,168,175,171,167,173

Considere o teste do sinal com um nível de significância de 5%.

O teste é bilateral, a mediana sob \(H_0\) é 170 e utilizaremos \(\alpha=5\%\). Os comandos a seguir fazem o teste:

Amostra = c(165,172,169,174,170,168,175,171,167,173)
Teste  = SIGN.test(x=Amostra, 
                   md=170,
                   alternative = "two.sided",
                   conf.int= 0.95)
Teste
## 
##  One-sample Sign-Test
## 
## data:  Amostra
## s = 5, p-value = 1
## alternative hypothesis: true median is not equal to 170
## 95 percent confidence interval:
##  167.3244 173.6756
## sample estimates:
## median of x 
##       170.5 
## 
## Achieved and Interpolated Confidence Intervals: 
## 
##                   Conf.Level   L.E.pt   U.E.pt
## Lower Achieved CI     0.8906 168.0000 173.0000
## Interpolated CI       0.9500 167.3244 173.6756
## Upper Achieved CI     0.9785 167.0000 174.0000

Note que o intervalo [168-173] tem uma confiança exata de 89,6%. Por outro lado o intervalo [167-174] tem uma confiança exata de 97,85%. Assim, ao interpolar estes dois intervalos para o nível 95% solicitado, obtem-se o intervalo [167,3244-173,6756]. Com um valor-p de 1, não rejeita-se a hipótese nula. Ou seja, há evidências de que a mediana das alturas não é 170.

4 TESTE DE POSTOS COM SINAIS DE WILCOXON

Para fazer o teste de postos com sinais de Wilcoxon no R, basta utilizar a função wilcox.test do pacote base do R. Essa função tem os seguintes argumentos:

  • x = vetor com as observações amostrais.
  • alternative = direção do teste: “two.sided”, “less”, “greater”.
  • mu = mediana esperada sob \(H_0\).
  • conf.int = valor lógico para que a função solte o intevalo de confiança.
  • conf.level = nível de confiança do intervalo.

Com base na distribuição dos postos e no número de observações, você pode usar tabelas de referência do teste de Wilcoxon ou simulações para determinar os percentis desejados (por exemplo, 95%). O intervalo de confiança é formado por valores que correspondem a esses postos em relação à amostra original, indicando os limites inferior e superior do intervalo de confiança para a mediana.

A função wilcox.test retorna as seguintes saídas:

  • V = soma dos postos positivos
  • p-value = valor-p
  • alternative hypothesis = hipótese alternativa.
  • percent confidence interval = intervalo de confiança.
  • sample estimates = estimativa amostral da mediana.

4.1 EXEMPLO 1: FREQUÊNCIA CARDÍACA

Um pesquisador está interessado em avaliar o nível de estresse de um grupo de funcionários de uma empresa. Para isso, ele utiliza uma escala de estresse que varia de 0 a 100, onde valores mais altos indicam maior estresse. O pesquisador quer saber se o nível de estresse mediano dos funcionários é significativamente maior que um valor referência de 50. Para isto, ele coletou os seguintes dados:

55, 59, 44, 70, 40, 49, 65, 31, 75, 52
    

Utilize o teste de postos com sinais de Wilcoxon com \(\alpha=5\%\)

O teste é unilateral à direita, a mediana sob \(H_0\) é 50 e utilizaremos \(\alpha=5\%\). Os comandos a seguir fazem o teste:

Amostra = c(55, 59, 44, 70, 40, 49, 65, 31, 75, 52)
Teste  = wilcox.test(x=Amostra,
                     alternative = "greater",
                     mu=50,
                     conf.int=T,
                     conf.level=0.95)
Teste
## 
##  Wilcoxon signed rank exact test
## 
## data:  Amostra
## V = 36, p-value = 0.2158
## alternative hypothesis: true location is greater than 50
## 95 percent confidence interval:
##   45 Inf
## sample estimates:
## (pseudo)median 
##             54

Note que o teste foi executado de maneira exata (Não houve nenhum empate). Assim, com um valor-p de 0,2158 não rejeita-se a hipótese nula de que a mediana da frequência cardíaca é 50.

4.2 EXEMPLO 2: SUPLEMENTO DIETÉTICO

Um grupo de pesquisadores quer investigar se um novo suplemento dietético tem um efeito positivo na qualidade do sono. Eles pedem a 12 voluntários que relatem suas horas de sono em média por noite antes de começar a tomar o suplemento. O valor de referência para a qualidade do sono considerado “normal” é de 7 horas. Os dados observados foram:

    6.5, 5.8, 7.1, 6.0, 7.5, 6.2, 5.5, 6.8, 7.3, 6.4, 5.9, 6.7
    

Teste a hipótese de que a mediana das horas de sono é menor que 7 horas. Use \(\alpha=5\%\)

O teste é unilateral à esquerda, a mediana sob \(H_0\) é 7 e utilizaremos \(\alpha=5\%\). Os comandos a seguir fazem o teste:

Amostra = c(6.5, 5.8, 7.1, 6.0, 7.5, 6.2, 5.5, 6.8, 7.3, 6.4, 5.9, 6.7)
Teste  = wilcox.test(x=Amostra,
                     alternative = "less",
                     mu=7,
                     conf.int=T,
                     conf.level=0.95)
Teste
## 
##  Wilcoxon signed rank test with continuity correction
## 
## data:  Amostra
## V = 10, p-value = 0.01263
## alternative hypothesis: true location is less than 7
## 95 percent confidence interval:
##      -Inf 6.800057
## sample estimates:
## (pseudo)median 
##       6.454383

Note que o teste foi executado de maneira aproximada (Utilizou-se uma correção de continuidade para os desempates). Assim, com um valor-p de 0,01263 rejeita-se a hipótese nula e há evidências de que a mediana das horas de sono é menor que 7 horas.

5 EXERCÍCIOS

Consulte a lista prática com os exercícios de 9 a 12.