[Medición de Python] Prueba de hipótesis paramétrica


En este artículo estudiamos la prueba de significancia (t-test) de las variables.

Para el modelo de regresión lineal múltiple, la relación lineal general de la ecuación es significativa, y no significa que la influencia de cada variable explicativa sobre la variable explicada sea significativa. Por lo tanto, cada variable explicativa debe someterse a una prueba de significancia para determinar si se utiliza como explicación Las variables se mantienen en el modelo. Si una variable tiene un efecto insignificante sobre la variable explicada, debe eliminarse para construir un modelo más simple. La prueba de significación variable más utilizada es la prueba t.

1. Prueba de hipótesis

La prueba de hipótesis es el proceso de usar información de muestra para juzgar si la hipótesis es verdadera. Primero presenta algunas suposiciones sobre los parámetros generales y luego usa información de muestra para juzgar si la hipótesis es verdadera.

1.1 Hipótesis Nula e Hipótesis Alternativa

Hipótesis nula: la hipótesis contra la que el investigador quiere recopilar evidencia, también conocida como hipótesis nula, con H 0 H_0H0expresar.

Hipótesis alternativa: la hipótesis que el investigador quiere recopilar evidencia para respaldar, también conocida como hipótesis de investigación, con H 1 H_1H1expresar.

1.2 Prueba unilateral

Si la hipótesis alternativa tiene una dirección específica y contiene la suposición de ">" o "<", se denomina prueba unilateral o prueba unilateral.

(1) Prueba unilateral de la mano derecha: el dominio de rechazo está en la cola derecha de la distribución

单侧检验:H 0 : μ ≤ μ 0 , H 1 : μ > μ 0 H_0:\mu \leq \mu_0,H_1:\mu> \mu_0H0:metrometro0,H1:metro>metro0, o: H 0 : μ = μ 0 , H 1 : μ > μ 0 H_0:\mu = \mu_0,H_1:\mu> \mu_0H0:metro=metro0,H1:metro>metro0

Dado un nivel de significación α \alphaα , obtenga el valor críticot α ( n − k − 1 ) t_{\alpha}(nk-1)ta( nk1 ),若t > t α ( norte − k − 1 ) t>t_{\alpha}(nk-1)t>ta( nk1 ) , se rechaza la hipótesis nula.

(2) Prueba unilateral de la mano izquierda: el dominio de rechazo está en la cola izquierda de la distribución

Prueba de un solo lado: H 0 : μ ≥ μ 0 , H 1 : μ < μ 0 H_0:\mu \geq \mu_0,H_1:\mu< \mu_0H0:metrometro0,H1:metro<metro0, o: H 0 : μ = μ 0 , H 1 : μ < μ 0 H_0:\mu = \mu_0,H_1:\mu< \mu_0H0:metro=metro0,H1:metro<metro0

Dado un nivel de significación α \alphaα , obtenga el valor críticot α ( n − k − 1 ) t_{\alpha}(nk-1)ta( nk1 ),若t < - t α ( norte - k - 1 ) t<-t_{\alpha}(nk-1)t<- ta( nk1 ) , se rechaza la hipótesis nula.

[Error en la transferencia de la imagen del enlace externo, el sitio de origen puede tener un mecanismo de enlace antirrobo, se recomienda guardar la imagen y cargarla directamente (img-k5KlHGEb-1659423356285) (https://files.mdnice.com/user/ 29206/8669d2fe-530f-45ae -b9fe-004e33499e0a.png)]

1.3 Prueba bilateral

Si la hipótesis alternativa no tiene una dirección específica y solo contiene la hipótesis de "≠", se denomina prueba de dos lados o prueba de dos lados.

Prueba doble: H 0 : μ = μ 0 , H 1 : μ ≠ μ 0 H_0:\mu = \mu_0,H_1:\mu \neq \mu_0H0:metro=metro0,H1:metro=metro0

Dado un nivel de significación α \alphaα , obtenga el valor críticot α 2 ( n − k − 1 ) t_{\frac{\alpha}{2}}(nk-1)t2a( nk1 ),若∣ t ∣ > t α 2 ( norte − k − 1 ) |t|>t_{\frac{\alpha}{2}}(nk-1)t >t2a( nk1 ) , se rechaza la hipótesis nula.

1.4 Ejercicios

Un instituto de investigación estima que la tasa de propiedad de los hogares en cierta ciudad supera el 30%. Para verificar si esta estimación es correcta, la institución de investigación seleccionó al azar una muestra para la prueba. Trate de enunciar y escribir las hipótesis nula y alternativa para la prueba.

Analícelo: Sea y el verdadero valor de la proporción de hogares que poseen automóviles en la ciudad. Obviamente, la hipótesis que el investigador quiere recopilar evidencia para respaldar es "la tasa de hogares que poseen automóviles en esta ciudad supera el 30%", por lo que la hipótesis nula y la hipótesis alternativa establecidas se pueden escribir como:

H0: y = 30 % (o y ≤ 30 %)
H1: y > 30 %

2. Caso: Prueba unilateral de la mano derecha

Tomando como ejemplo el caso 4.1 del "Capítulo 4 Análisis de regresión múltiple: inferencia" en "Introducción a la econometría: métodos modernos" de Woodridge, usamos los datos de observación de 526 trabajadores en WAGE1 para estudiar sus salarios, nivel de educación y relación laboral entre experiencia y tenencia. Construya un modelo de regresión lineal múltiple de la siguiente manera:
log ( salario ) = β 0 + β 1 educ + β 2 exper + β 3 antigüedad + u log(salario)=\beta_0+\beta_1educ+\beta_2exper+\beta_3tenure+ulogaritmo ( salario ) _ _ _ _ _=b0+b1educación _ _ _+b2e x p o+b3tenencia _ _ _ _+tu

  • log(salario): el logaritmo de los salarios, también registrado como lwage
  • educ: nivel de educación
  • exper: experiencia laboral
  • tenencia: duración de la tenencia

El código para construir el modelo es el siguiente:

import wooldridge as woo
import statsmodels.formula.api as smf
from scipy import stats

wage1 = woo.dataWoo('wage1')

#建立回归模型:
reg = smf.ols(formula='lwage ~ educ + exper + tenure', data = wage1)
results = reg.fit()
print(results.summary())

Los resultados de la regresión del modelo son los siguientes:
log ( salario ) ^ = 0.2844 + 0.0920 educ + 0.0041 exper + 0.0221 tenure + u \widehat{log(wage)}=0.2844+0.0920educ+0.0041exper+0.0221tenure+ulogaritmo ( salario ) _ _ _ _ _ =0.2844+0.0920 e d u c+0.0041 ex por _ _+0.0221 ten e re _ _+El coeficiente de pendiente de u
experiencia laboral es 0.0041, este ejemplo probará aún más si el coeficiente es 0.

Usando el método de prueba de construcción alternativa unilateral, a saber: H 0 : β exper = 0 , H 1 : β exper > 0 H_0:\beta_{exper} = 0,H_1:\beta_{exper}> 0H0:be x p er=0 ,H1:be x p er>0

1.1 Comparación de estadísticos t y valor crítico

el código se muestra a continuación:

#1.计算样本量
n = len(wage1)
#2.计算自由度
df = n-3-1   #n为计算的样本量,3为自变量个数
#3.计算t统计量
t_exper = results.params['exper']/ results.bse['exper'] #params获得系数,bse获得系数标准误
#t_exper = results.tvalues['exper'] #tvalues直接获得t统计量
#4.计算拒绝临界值
a = 0.05 #显著性水平为5%
c = stats.t.ppf(1-a,df)
#5.比较t统计量和临界值大小
if t_exper > c:
	print('拒绝原假设,exper的回归系数显著大于0')
else:
	print('不能拒绝原假设,exper不显著')

En este ejemplo, el resultado calculado del estadístico t es 2,39 y el valor crítico de rechazo es 1,648. El estadístico t es mayor que el valor crítico de rechazo, por lo que se rechaza la hipótesis nula y el coeficiente exper es significativamente mayor que 0.

1.2 Comparación de valores de p y niveles de significación

También podemos tomar el enfoque del valor p.

#1.计算样本量
n = len(wage1)
#2.计算自由度
df = n-3-1   #n为计算的样本量,3为自变量个数
#3.计算t统计量
t_exper = results.params['exper']/ results.bse['exper'] #params获得系数,bse获得系数标准误
#t_exper = results.tvalues['exper'] #tvalues直接获得t统计量
#4.计算p值
pval = stats.t.cdf(-abs(t_exper), df)
#pval = 1-stats.t.cdf(abs(t_exper), df)
#5.比较p和显著性水平大小
a = 0.05 #显著性水平为5%
if pval < a:
	print('拒绝原假设,exper的回归系数显著大于0')
else:
	print('不能拒绝原假设,exper不显著')

El valor p es 0,0086, que es inferior al nivel de significación del 5 %, por lo que se rechaza la hipótesis nula.

3. Caso: prueba del lado izquierdo unilateral

Tomando como ejemplo el caso 4.2 del "Capítulo 4 Análisis de regresión múltiple: inferencia" en "Introducción a la econometría: métodos modernos" de Woodridge, utilizamos los datos relacionados con el rendimiento matemático de los estudiantes estadounidenses en MEAP93 para estudiar los factores que influyen en el rendimiento matemático estandarizado. Incluyendo el salario anual de los docentes, el número de alumnos matriculados y el número de docentes. Construya un modelo de regresión lineal múltiple de la siguiente manera:
math 10 = β 0 + β 1 totcomp + β 2 personal + β 3 inscribir + u math10=\beta_0+\beta_1totcomp+\beta_2staff+\beta_3enroll+umatemáticas 10 _ _=b0+b1para compensar _ _ _ _+b2personal _ _ _+b3en rollo _ _+tu

  • math10: puntajes estandarizados de exámenes de matemáticas de diez puntos
  • totcomp: salario promedio anual de los maestros
  • personal: el número de profesores por cada mil estudiantes
  • matricularse: el número de estudiantes registrados

El código para construir el modelo es el siguiente:

import wooldridge as woo
import statsmodels.formula.api as smf
from scipy import stats

meap93 = woo.dataWoo('meap93')

#建立回归模型:
reg = smf.ols(formula='math10 ~ totcomp + staff + enroll', data = meap93)
results = reg.fit()
print(results.summary())

Los resultados de la regresión del modelo son los siguientes:
matemáticas 10 ^ = 2,2740 + 0,0005 totcomp + 0,0479 personal − 0,0002 inscribir \widehat{math10}=2,2740+0,0005totcomp+0,0479 personal-0,0002inscribirmatemáticas 10 _ _ =2.2740+0.0005 para completar _ _ _ _+0.0479 personal _ _ _El coeficiente de regresión de 0,0002 e n roll matricularse
es -0,0002. Este ejemplo probará aún más si el coeficiente es 0.

Adopte un método de prueba de construcción alternativo unilateral, a saber: H 0 : β inscribir = 0 , H 1 : β inscribir < 0 H_0:\beta_{inscribir} = 0,H_1:\beta_{inscribir}< 0H0:ben rollo _ _=0 ,H1:ben rollo _ _<0

1.1 Comparación de estadísticos t y valor crítico

el código se muestra a continuación:

#1.计算样本量
n = len(meap93)
#2.计算自由度
df = n-3-1   #n为计算的样本量,3为自变量个数
#3.计算t统计量
t_enroll = results.tvalues['enroll'] #tvalues直接获得t统计量
#4.计算拒绝临界值
a = 0.05 #显著性水平为5%
c = stats.t.ppf(a,df)
#4.比较t统计量和临界值大小
if t_enroll < c:
	print('拒绝原假设,enroll的回归系数显著小于0')
else:
	print('不能拒绝原假设,enroll不显著')

El estadístico t de la variable enroll es -0.91, y el valor crítico de rechazo de la distribución t al nivel de significación del 5% es -1.65, el estadístico t es mayor que el valor crítico, por lo que no se puede rechazar la hipótesis nula, y el la variable de inscripción tiene un nivel de significación del 5 % no es significativa.

1.2 Comparación de valores de p y niveles de significación

#1.计算样本量
n = len(meap93)
#2.计算自由度
df = n-3-1   #n为计算的样本量,3为自变量个数
#3.计算t统计量
t_enroll = results.tvalues['enroll'] #tvalues直接获得t统计量
#4.计算p值
pval = stats.t.cdf(-abs(t_enroll), df)
#pval = 1-stats.t.cdf(abs(t_enroll), df)
#5.比较p和显著性水平大小
a = 0.05 #显著性水平为5%
if pval < a:
	print('拒绝原假设,enroll的回归系数显著大于0')
else:
	print('不能拒绝原假设,enroll不显著')

El valor p es 0,18, que es mayor que el nivel de significancia del 5 %, por lo que no se puede rechazar la hipótesis nula.

4. Caso: inspección bilateral

Tomamos el caso 4.3 del "Capítulo 4 Análisis de regresión múltiple: inferencia" en "Introducción a la econometría: métodos modernos" de Woodridge como ejemplo, y usamos los datos de GPA1 para estudiar los factores que afectan las calificaciones universitarias, incluidas las calificaciones de la escuela secundaria, las ausencias semanales y la universidad. puntajes de las pruebas de aptitud. Construya un modelo de regresión lineal múltiple de la siguiente manera:
col GPA = β 0 + β 1 hs GPA + β 2 ACT + β 3 omitido + u colGPA=\beta_0+\beta_1hsGPA+\beta_2ACT+\beta_3skipped+uco lGP A=b0+b1h s GP A+b2Una tomografía computarizada+b3saltar _ _ _ _+tu

  • colGPA: grado universitario
  • hsGPA: calificaciones de la escuela secundaria
  • ACT: puntaje de la prueba de aptitud universitaria
  • salteado: número de clases perdidas por semana

El código para construir el modelo es el siguiente:

import wooldridge as woo
import statsmodels.formula.api as smf
from scipy import stats

gpa1 = woo.dataWoo('gpa1')

#建立回归模型:
reg = smf.ols(formula='colGPA ~ hsGPA + ACT + skipped', data = gpa1)
results = reg.fit()
print(results.summary())

Los resultados de la regresión del modelo son los siguientes:
col GPA ^ = 1.3896 + 0.4118 hs GPA + 0.0147 ACT − 0.0831 omitido \widehat{colGPA}=1.3896+0.4118hsGPA+0.0147ACT-0.0831omitidoco lGP A =1.3896+0.4118 hs GP A _+0.0147 A TC0.0831 omitido
Este ejemplo verifica si el coeficiente es igual a 0 .

Utilice el método de prueba de construcción alternativa de dos colas, a saber: H 0 : β i = 0 , H 1 : β i ≠ 0 H_0:\beta_i = 0,H_1:\beta_i\neq 0H0:byo=0 ,H1:byo=0

1.1 Comparación de estadísticos t y valor crítico

#1.计算样本量
n = len(gpa1)
#2.计算自由度
df = n-3-1   #n为计算的样本量,3为自变量个数
#3.计算t统计量
t_values = results.tvalues  #tvalues直接获得t统计量
#4.计算在显著性水平为5%的情况下的t分布双侧检验拒绝临界值
a = 0.05 #显著性水平为5%
c = stats.t.ppf(1-a/2,df)  #右侧临界值
#4.比较t统计量和临界值大小
print(f't统计量为:\n{
      
      t_values}')
print(f'左侧临界值:{
      
      -c},右侧临界值:{
      
      c}')
for i in range(len(t_values)-1):
    if abs(t_values[i+1]) > c:
        print(f'拒绝原假设,{
      
      t_values.index[i+1]}的回归系数显著不等于0')
    else:
        print(f'不能拒绝原假设,{
      
      t_values.index[i+1]}不显著')

El resultado es:

t统计量为:
Intercept    4.191039
hsGPA        4.396260
ACT          1.393319
skipped     -3.196840
dtype: float64
左侧临界值:-1.977431212292894,右侧临界值:1.9774312122928936
拒绝原假设,hsGPA的回归系数显著不等于0
不能拒绝原假设,ACT不显著
拒绝原假设,skipped的回归系数显著不等于0

Según el cálculo, el estadístico t de hsGPA es 4,40, que es mucho mayor que el valor crítico correcto de 1,98, por lo que es significativo; el estadístico t de ACT es 1,39, que es menor que el valor crítico correcto de 1,98, que no es estadísticamente significativo; el estadístico t omitido La magnitud es -3,2, que es menor que el valor crítico izquierdo -1,98, o su valor absoluto es mayor que el valor crítico derecho 1,98, por lo que es significativo.

1.2 Comparación de valores de p y niveles de significación

También podemos tomar el enfoque del valor p.

#1.计算样本量
n = len(gpa1)
#2.计算自由度
df = n-3-1   #n为计算的样本量,3为自变量个数
#3.计算t统计量
t_values = results.tvalues  #tvalues直接获得t统计量
#4.计算p值
pval = 2*stats.t.cdf(-abs(t_values), df) #双侧检验
#pval = 2*(1-stats.t.cdf(abs(t_values), df))
#5.比较p和显著性水平大小
a = 0.05 #显著性水平为5%
for i in range(len(t_values)-1):
    if pval[i+1] < a:
        print(f'拒绝原假设,{
      
      t_values.index[i+1]}的回归系数显著不等于0')
    else:
        print(f'不能拒绝原假设,{
      
      t_values.index[i+1]}不显著')

1.2 Llamar a t_test() para la prueba t

Además de realizar manualmente la prueba t nosotros mismos, podemos llamar al método results.t_test() para realizar directamente la prueba t, que solo puede realizar pruebas bilaterales.

hypotheses ='hsGPA =0,ACT=0,skipped =0'
t_test = results.t_test(hypotheses)
print(t_test)

El resultado es el siguiente:

                             Test for Constraints                             
==============================================================================
                 coef    std err          t      P>|t|      [0.025      0.975]
------------------------------------------------------------------------------
c0             0.4118      0.094      4.396      0.000       0.227       0.597
c1             0.0147      0.011      1.393      0.166      -0.006       0.036
c2            -0.0831      0.026     -3.197      0.002      -0.135      -0.032
==============================================================================

5. Caso: Realice la prueba t en el coeficiente de regresión de cada variable, suponiendo que el valor no es 0

agotamiento: H 0 : β i = 0 H_0:\beta_i = 0H0:byo=0 es la suposición más común, pero a veces también queremos probar si $\beta_i$ es igual a alguna otra constante dada. Por ejemplo, si estudiamos si el coeficiente de regresión de hsGPA a colGPA es mayor a 0.4, nuestra hipótesis nula e hipótesis alternativa son:
H 0 : β hs GPA = 0.4 , H 1 : β hs GPA > 0.4 H_0:\beta_{hsGPA }= 0.4 ,H_1:\beta_{hsGPA}> 0.4H0:bh s GP A=0.4 ,H1:bh s GP A>0.4
resultados.tvalues ​​​​devuelve el estadístico t con la hipótesis nula de que el coeficiente es igual a 0. Cuando el coeficiente de la hipótesis nula es igual a otras constantes, el estadístico t debe calcularse mediante la fórmula, la fórmula es la siguiente: estadístico t = valor estimado
− valor supuesto error estándar estadístico t Cantidad = \frac{valor estimado - valor supuesto}{error estándar}estadística t=Error estándarvalor estimadoValor hipotético

1.1 Comparación de estadísticos t y valor crítico

el código se muestra a continuación:

#1.计算样本量
n = len(gpa1)
#2.计算自由度
df = n-3-1   #n为计算的样本量,3为自变量个数
#3.计算t统计量
t_hsGPA = (results.params['hsGPA']-0.4)/ results.bse['hsGPA'] #params获得系数,bse获得系数标准误
#4.计算拒绝临界值
a = 0.05 #显著性水平为5%
c = stats.t.ppf(1-a,df)
#4.比较t统计量和临界值大小
if t_hsGPA > c:
	print('拒绝原假设,hsGPA的回归系数显著大于0.4')
else:
	print('不能拒绝原假设,hsGPA的回归系数大于0.4是不显著的')

El resultado es:

不能拒绝原假设,hsGPA的回归系数大于0.4是不显著的

Calculamos que el estadístico t es 0,126 y el valor crítico bilateral de la distribución t al nivel de significancia del 5 % es 1,66. El estadístico t es menor que el valor crítico, por lo que no se puede rechazar la hipótesis nula, es decir, el coeficiente de regresión de hsGPA a colGPA es superior a 0,4 No significativo.

1.2 Comparación de valores de p y niveles de significación

el código se muestra a continuación:

#1.计算样本量
n = len(gpa1)
#2.计算自由度
df = n-3-1   #n为计算的样本量,3为自变量个数
#3.计算t统计量
t_hsGPA = (results.params['hsGPA']-0.4)/ results.bse['hsGPA'] #params获得系数,bse获得系数标准误
#4.计算p值
pval = stats.t.cdf(-abs(t_hsGPA), df)
#pval = 1-stats.t.cdf(t_hsGPA), df)
#5.比较p和显著性水平大小
a = 0.05 #显著性水平为5%
if pval < a:
	print('拒绝原假设,hsGPA的回归系数显著大于0.4')
else:
	print('不能拒绝原假设,hsGPA的回归系数大于0.4是不显著的')

Supongo que te gusta

Origin blog.csdn.net/mfsdmlove/article/details/126122506
Recomendado
Clasificación