[R-br] [OFF-Topic] Distribuição Normal e teste de t

Marcos Vital marcosvital em gmail.com
Sexta Abril 25 13:23:51 BRT 2014


Olá, Thales

Bom, não estou respondendo a sua dúvida sobre Monte Carlo (não conheço bem
o método), mas queria fazer uma observação sobre o pressuposto da
normalidade.

Como o seu teste é pareado, o cálculo do t é feito sobre as diferenças, e
não sobre os valores brutos. Então acredito que você deva testar a
normalidade das diferenças entre as variáveis x e y.

Fiz o teste rapidamente com os dados que você incluiu no email, e o shapiro
agora não rejeita a normalidade. Veja:

dif<-x-y

shapiro.test(dif)

        Shapiro-Wilk normality test

data:  dif
W = 0.9716, p-value = 0.2683

Considere isso como possibilidade, então, pois é possível que você não
precise sair do bom e velho teste t.

Abraços

Marcos

Em 25 de abril de 2014 12:00, <r-br-request em listas.c3sl.ufpr.br> escreveu:

> Enviar submissões para a lista de discussão R-br para
>         r-br em listas.c3sl.ufpr.br
>
> Para se cadastrar ou descadastrar via WWW, visite o endereço
>         https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> ou, via email, envie uma mensagem com a palavra 'help' no assunto ou
> corpo da mensagem para
>         r-br-request em listas.c3sl.ufpr.br
>
> Você poderá entrar em contato com a pessoa que gerencia a lista pelo
> endereço
>         r-br-owner em listas.c3sl.ufpr.br
>
> Quando responder, por favor edite sua linha Assunto assim ela será
> mais específica que "Re: Contents of R-br digest..."
>
>
> Message: 2
> Date: Fri, 25 Apr 2014 08:55:04 +0200
> From: Tropidurus Torquatus <t.torquatus em gmail.com>
> To: r-br em listas.c3sl.ufpr.br
> Subject: [R-br] [OFF-Topic] Distribuição Normal e teste de t
> Message-ID: <E44FD9CC-9263-4D76-91B5-C084EDFB64C7 em gmail.com>
> Content-Type: text/plain; charset=windows-1252
>
> Caros R-users,
>
> Coloquei como off-topic pois acredito que esta seja mais uma dúvida
> conceitual do que de R ppd.
>
> Dado que tenho dois conjuntos de dados:
>
> x <- c ( 13.772 , 10.119 , 11.224 , 21.999 , 17.181 , 27.477 , 21.693 ,
> 26.706 , 14.576 , 19.689 , 12.494 , 19.511 , 16.785 , 16.551 , 20.780 ,
>  0.000 , 25.867 , 28.223 , 26.059 , 21.668 , 18.209 , 20.186 , 28.320 ,
> 26.946 , 16.218 , 16.814 , 16.859 ,  0.000 ,  0.000 ,  3.986 ,  1.625 ,
> 17.286 , 28.149 , 19.404 , 21.669 , 22.058 , 14.947 , 14.512 , 21.177 ,
> 29.997 , 20.958 , 15.123 , 28.932 , 23.807 , 30.589 , 10.208 , 20.076 ,
> 18.897 , 14.666 , 13.955)
>
> y <-  c ( 13.902 , 10.102 , 11.301 , 22.081 , 17.234 , 27.540 , 21.741 ,
> 26.677 , 14.621 , 19.766 , 12.547 , 19.622 , 16.857 , 16.628 , 20.787 ,
>  0.000 , 25.943 , 28.313 , 26.166 , 21.724 , 18.255 , 20.307 , 28.387 ,
> 27.079 , 16.202 , 16.857 , 16.875 ,  0.000 ,  0.000 ,  3.951 ,  1.681 ,
> 17.353 , 28.273 , 19.422 , 21.724 , 22.164 , 14.902 , 14.458 , 21.174 ,
> 30.024 , 20.949 , 15.101 , 28.926 , 23.850 , 30.597 , 10.147 , 20.035 ,
> 18.873 , 14.691 , 13.892)
>
> As duas amostras estão pareadas.
> As duas amostras falham para o teste de normalidade:
>
> > shapiro.test ( x )
>
>         Shapiro-Wilk normality test
>
> data:  testetcompounds$tR...tM.UV.ABC
> W = 0.9373, p-value = 0.01057
>
> > shapiro.test ( y )
>
>         Shapiro-Wilk normality test
>
> data:  testetcompounds$tR...tM.UV.ABC.Group10
> W = 0.9372, p-value = 0.01043
>
> No livro Bayesian Computation with R
>
> Sugere que para distribuições não normais é necessário fazer o teste de
> Monte Carlo
>
> Com a seguinte função
> =======================================================
>  tstatistic = function ( y , x )
>   {
>   m = length ( y )
>   n = length ( x )
>   sp = sqrt( ( ( m - 1 ) * sd ( y ) ^ 2 + ( n - 1 ) * sd ( x ) ^ 2 ) / ( m
> + n - 2 ) )
>   t = ( mean ( y ) - mean ( x ) ) / ( sp * sqrt ( 1 / m + 1 / n) )
>   return ( t )
>   }
> ========================================================
> Retornando
>
> t = -0.02242564
>
> Em seguida o teste:
> ========================================================
> alpha = 0.01 ; m = 50 ; n = 50  # sets alpha, m and n ( alpha is the
> stated significance level, m and n are the samples sizes )
> N = 10000                                       # sets the number of
> simulations
> n.reject = 0                                    # counter of num. of
> rejections
> for ( i in 1 : N )
>   {
>   x = rnorm ( m , mean = x , sd = x )
>
>                                   # simulates xs from population 1
>   y = rnorm ( n , mean = y , sd = y )
>
>                                   # simulates ys from population 2
>  t = tstatistic ( y , x )                       # computes the t statistic
>   if ( abs ( t ) > qt ( 1 - alpha / 2 , n + m - 2) )
>     n.reject = n.reject + 1
>
>                                           # reject if |t| exceeds critical
> pt
>   }
> true.sig.level = n.reject/N
>
>                                           # est. is proportions of
> rejections
> ========================================================
> Retornando
>
> true.sig.level = 0.0049
>
>
> Problema Conceitual
>
> 1) Como interpretar esse resultado?
>
>
> Porém ainda há uma diferença entre o t calculado por essa fórmula e o t
> calculado com o comando t.stat (padrão do R)
>
> ================================================================
> t = t.test ( y , x , mu = 0 , paired = TRUE , var.equal = TRUE ,
> conf.level = 0.9999 )
> t
>
>         Paired t-test
>
> data:  y and x
> t = 4.6437, df = 49, p-value = 2.594e-05
> alternative hypothesis: true difference in means is not equal to 0
> 99.99 percent confidence interval:
>  0.003082235 0.067077765
> sample estimates:
> mean of the differences
>                 0.03508
>
> ================================================================
>
> E finalmente? minha média da diferencia é conhecida e não é zero, assim
> utilizei o seguinte comando:
>
> t = t.test ( y , x , mu = 0.87 , paired = TRUE , var.equal = TRUE ,
> conf.level = 0.9999, alternative = "less? )
>
> Paired t-test
>
> data:  y and x
> t = -110.5231, df = 49, p-value < 2.2e-16
> alternative hypothesis: true difference in means is less than 0.87
> 99.99 percent confidence interval:
>        -Inf 0.06545182
> sample estimates:
> mean of the differences
>                 0.03508
>
> 2) Problema de Comando? como fazer a simulação de Monte Carlo na situação
> acima?
>
> * Obs.: aceito sugestões de leitura sobre o assunto e comando alternativos
> para comparar a médias
>
>
> Muito obrigado e me desculpe pelo longo e-mail.
>
>
> Thales
>
>
>

-- 
Marcos Vinícius Carneiro Vital
Universidade Federal de Alagoas
Instituto de Ciências Biológicas e da Saúde
Setor de Biodiversidade e Ecologia
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20140425/ddd219d0/attachment.html>


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