2015-06-26 2 views
0

У меня есть код для множественной регрессии OLS с процедурой Newey-West.Множественная регрессия с OLS в python

import pandas as pd 
import numpy as np 
import statsmodels.api as sm 

df = pd.DataFrame({'a':[1,3,5,7,4,5,6,4,7,8,9], 
        'b':[3,5,6,2,4,6,7,8,7,8,9]}) 

results = sm.OLS(df.a, sm.add_constant(df.b)).fit() 
new = results.get_robustcov_results(cov_type='HAC',maxlags=1) 
print new.summary() 

Это работает, но как я должен изменить код, если у меня есть больше переменных, как ....

df = pd.DataFrame({'a':[1,3,5,7,4,5,6,4,7,8,9], 
        'b':[3,5,6,2,4,6,7,8,7,8,9], 
        'c':[3,5,6,2,4,8,7,8,9,9,9], 
        'd':[3,5,6,2,5,8,8,9,8,10,9]}) 

... и хотел, чтобы проанализировать их влияние на переменной а, подобно анализ переменной b в исходном коде?

Как должна выглядеть Code-line results = sm.OLS(df.a, sm.add_constant(df.b)).fit()?

Спасибо!

ответ

0

Вы можете указать несколько переменных, как это:

results = sm.OLS(df.a, sm.add_constant(df[list('bcd')])).fit() 
+0

Великого. Большое спасибо! – EP1986

Смежные вопросы