Realizando um teste T-student

Um dos procedimentos mais básicos em estatística é a comparação entre duas amostras. Um dos mais poderosos e mais populares testes para o propósito é o teste T-student, e você pode realiza-lo via o módulo stats do scipy.

Executando-se os comandos abaixo, vemos que o módulo stats tem três métodos principais para realizar um teste T-student ('ttest_1samp', 'ttest_ind', 'ttest_rel') e suas respectivas documentações.

>>> from scipy import stats
>>> dir(stats)
['NumpyTest', ...., 'ttest_1samp', 'ttest_ind', 'ttest_rel', ...., 'zs']
>>> print stats.ttest_1samp.__doc__

Calculates the t-obtained for the independent samples T-test on ONE group
of scores a, given a population mean.

Returns: t-value, two-tailed prob

>>> print stats.ttest_ind.__doc__

Calculates the t-obtained T-test on TWO INDEPENDENT samples of scores
a, and b.  From Numerical Recipies, p.483. Axis
can equal None (ravel array first), or an integer (the axis over
which to operate on a and b).

Returns: t-value, two-tailed p-value

>>> print stats.ttest_rel.__doc__

Calculates the t-obtained T-test on TWO RELATED samples of scores, a
and b.  From Numerical Recipies, p.483. Axis
can equal None (ravel array first), or an integer (the axis over
which to operate on a and b).

Returns: t-value, two-tailed p-value

Digamos que temos duas amostras indepentendes (são fictícias, e não testei sua normalidade), e queremos testar a hipótese nula de que elas são originadas de uma mesma população. Para realizar o teste T-student, devemos proceder da seguinte maneira:

>>> a = [2,3,4,3,5,6] # amostra a
>>> b = [5,7,8,8,5,6] # amostra b
>>> stats.ttest_ind(a,b)
(array(-3.2391053207156637), 0.0088828669913688148)

O primeiro valor que retornou corresponde ao valor T e o segundo corresponde ao valor p (two-tailed).

Só para ilustrar, poderiamos ter feito o mesmo teste utlizando-se do módulo RPy.

>>> from rpy import *
>>> rpy_ttest = r.t_test(a,b)
>>> print rpy_ttest["p.value"]
0.00893133561491
>>> print rpy_ttest["statistic"]["t"]
-3.23910532072
>>>

Os valores batem!

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License