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:

Distribuição normal vs distribuição t

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 )

diagrama de distribuição t em Python

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)

traçar curva de distribuição t em Python

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

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *