Como usar a distribuição t em python
A distribuição t é uma distribuição de probabilidade semelhante à distribuição normal , exceto que possui “caudas” mais pesadas que a distribuição normal.
Em outras palavras, mais valores na distribuição estão localizados nas extremidades do que no centro em comparação com a distribuição normal:
Este tutorial explica como usar a distribuição t em Python.
Como gerar para distribuir
Você pode usar a função t.rvs(df, size) para gerar valores aleatórios de uma distribuição com graus de liberdade e tamanho de amostra específicos:
from scipy. stats import t #generate random values from t distribution with df=6 and sample size=10 t. rvs (df= 6 , size= 10 ) array([-3.95799716, -0.01099963, -0.55953846, -1.53420055, -1.41775611, -0.45384974, -0.2767931, -0.40177789, -0.3602592, 0.38262431])
O resultado é uma tabela de 10 valores que se sucedem segundo uma distribuição com 6 graus de liberdade.
Como calcular valores P usando distribuição t
Podemos usar a função t.cdf(x, df, loc=0, scale=1) para encontrar o valor p associado a uma estatística de teste t.
Exemplo 1: Encontrando um valor P unilateral
Suponha que realizemos um teste de hipótese unilateral e obtenhamos uma estatística de teste de -1,5 e graus de liberdade = 10 .
Podemos usar a seguinte sintaxe para calcular o valor p que corresponde a esta estatística de teste:
from scipy. stats import t #calculate p-value t. cdf (x=-1.5, df=10) 0.08225366322272008
O valor p unilateral que corresponde à estatística de teste de -1,5 com 10 graus de liberdade é 0,0822 .
Exemplo 2: Encontrando um valor P bidirecional
Suponha que realizemos um teste de hipótese bicaudal e obtenhamos uma estatística de teste de 2,14 e graus de liberdade = 20 .
Podemos usar a seguinte sintaxe para calcular o valor p que corresponde a esta estatística de teste:
from scipy. stats import t #calculate p-value (1 - t. cdf (x=2.14, df=20)) * 2 0.04486555082549959
O valor p bilateral que corresponde à estatística de teste de 2,14 com 20 graus de liberdade é 0,0448 .
Nota : Você pode verificar essas respostas usando a calculadora de distribuição t inversa.
Como rastrear a distribuição
Você pode usar a seguinte sintaxe para traçar uma distribuição com graus de liberdade específicos:
from scipy. stats import t import matplotlib. pyplot as plt #generate t distribution with sample size 10000 x = t. rvs (df= 12 , size= 10000 ) #create plot of t distribution plt. hist (x, density= True , edgecolor=' black ', bins= 20 )
Alternativamente, você pode criar uma curva de densidade usando o pacote de visualização marítima :
import seaborn as sns #create density curve sns. kdeplot (x)
Recursos adicionais
Os tutoriais a seguir fornecem informações adicionais sobre a distribuição:
Distribuição normal vs distribuição t: qual a diferença?
Calculadora de distribuição t inversa