2016-03-27 28 views
0

OLS için statsmodels'un hangi sürümde has_constant işlev eklendiğini sormak ister misiniz? debian wheezy üzerinde çalışıyorum, burada yalnızca 0.4.2 destekleniyor. Localhost üzerinde 0.6.1 sürümü var ve has_constant destekleniyor ve iyi çalışıyor. Benim sonuç statsmodels 0.4.2 OLS için has_constant destek vermedi yaniPython statsmodels add_constant sürüm sorunu

add_constant() got an unexpected keyword argument 'has_constant' 

Yani bu dayalı:

kodudur:

mat_zavisle_L = sm.add_constant(mat_zavisle_L, prepend=True, has_constant='add') 
results = sm.OLS(endog=mat_cena_L, exog=mat_zavisle_L).fit() 

ve bana hata veriyor. Statisticsmodels'in belgelerine ve relase geçmişine bakıyordum ama alakalı bir şey bulamadım. Yani 0.4.2 version için has_constant ile aynı şeyi yapan başka bir işlev var mı?

cevap

1

Yani, add_constant() işlevinde has_constant anahtar kelime bağımsız değişkenini kullanıyorum.

the docs yanlış değilse, 0.6.0 sonra tanıtıldı.

Aynı işlevi gören bir işlev için, en son sürümün kaynak koduna add_constamt() kadar güçlü olmasını istiyorsanız. Ya da eski sürümü yamalayın, böylece sabit sütunları kontrol etmeyin. Veya verilerinizle çalışan daha basit bir sürümü uygulayabilirsiniz. Örneğin 2B dizileri için:

def add_constant(data): 
    cons = np.ones(data.shape[0]) 
    return np.c_[cons, data] 

add_constant(np.array([[1, 2, 3], [1, 4, 9]])) 

array([[ 1., 1., 2., 3.], 
     [ 1., 1., 4., 9.]]) 
+0

@GoyoThanks, işe yarıyor. – koaxko