2016-03-30 48 views
1

Regresyon gibi bazı ekonometri çalışmaları için numpy ve pandas + statsmodel gibi scipy proje paketlerini kullanıyorum ve şimdi β1 + β2 = 1 gösteren bir test istiyorum. .Sabit Dönüşün hipotez testini bir cobb-douglas fonksiyonu için ölçeğe göre test edin:

Benim formüldür: $ Ln ​​(Q_i) = \ beta_0 + \ Bu kodu ama piton ı don kullanmak zorunda ben Stata biliyorum $

Ln (K_i) beta_2 Ln (L_i) + \ beta_1 Test EKK parametreleri ve statsmodels paketini kullanarak EKK parametrelerin telt lineer kombinasyonu, nasıl çalıştığını ben yolunu buldu @JohnE ve JseBold Slides için

test ln(K)+ln(L)=1 
+0

Üzgünüz burada lateks ile nasıl çalışacağımı bilmiyorum y http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference fakat işe yaramıyor :( – Mehdi

+0

Bence istatistik modellerinde genellikle formül için patsy kullanıyorlar? – JohnE

+0

Parametreler üzerinde doğrusal hipotez testi, sonuç örneğinin t_test veya f_test veya wald_test yöntemleri ile yapılabilir. – user333700

cevap

1

Teşekkür: 't β1 + β2 = 1 sınamanın en iyi yolu nedir patsy formülü ile ve çok kolay, İşte benim kodum:

import pandas as pn 
import numpy as np 
import statsmodels.formula.api as smf 

\\reading stata data file: 
dp4 = pn.read_stata('datapset4.dta') 

\\Rergession: 
formula = 'Ln(output) ~ Ln(labor) +Ln(capital) ' 
cb= smf.ols(formula, data = dp4).fit() 

\\Hypothesis Test for H0: "beta1 + beta 2 = 1" 
print(cb.t_test("Ln(labor) +Ln(capital)=1")) 



          Test for Constraints        
============================================================================== 
       coef std err   t  P>|t|  [95.0% Conf. Int.] 
------------------------------------------------------------------------------ 
c0    0.9787  0.063  -0.340  0.737   0.850  1.108 
============================================================================== 

Yani parametrelerin doğrusal kombinasyonu test etmek için sadece istediğiniz değişken ve lineer kombinasyonu için kurban formülünü yazmak gerekir ve t_test koymak veya regresyon f_test yöntemi:

cb.t_test("Ln(labor) +Ln(capital)=1") 

Ve test için Sadece test beta1 = 1/2, (L1 (iş emeği) katsayısı olarak beta1) istiyorsanız, örneğin alıntıda test etmek istediğiniz denklemi yazmanız gereken bir parametre hakkındaki bir hipotez: sadece bu kodu yazmanız yeterlidir:

print(cb.t_test("Ln(labor)=0.5")) 
          Test for Constraints        
============================================================================== 
       coef std err   t  P>|t|  [95.0% Conf. Int.] 
------------------------------------------------------------------------------ 
c0    0.6030  0.126  0.818  0.422   0.343  0.863 
============================================================================== 
İlgili konular