Python StatsModels Patsy Work-Around,使用模型参数进行预测

时间:2016-03-10 16:43:48

标签: python regression statsmodels predict patsy

我对按年分类的抵押贷款数据面板进行了回归分析。所有变量都是分类的虚拟变量。在某些年份,可能存在其他年份不存在的抵押贷款的某些特征或特征,因此我得到如下的Patsy错误:

 PatsyError: Error converting data to categorical: observation with value 'Null/Invalid' does not match any of the expected levels (expected: ['Conventional', 'FHA', 'Other Non-Government Loan', 'VA'])
net_gnma_rate ~ C(origination_month) + C(Mortgage_FICO_Bins, Treatment("(720, 900]")) * C(Mortgage_LTV_Bins, Treatment("(0, 80]")) + C(alt_loantype, Treatment("Conventional")) + C(conforming_mtge, Treatment("conforming")) + C(alt_lien, Treatment("1st Lien")) + C(doctype, Treatment("Full Documentation")) + C(alt_occ, Treatment("Owner Occupied")) + C(altpmi3, Treatment("No PMI")) + C(units, Treatment("1 unit"))

是否有任何方法可以在StatsModels预测工具的构造中插入不存在的变量的beta系数,最好是上一年的一个。所以,例如:

   Variable      Beta 2011  Beta 2012       Count 2012        Count 2013
   Loan Type A      -.05      -.08             2000              800
   Loan Type B      -.22      -.25             1000              1500  
   Loan Type C      -.38                                         500

如果我做了model2012.predict(data2013),则会出现错误,因为2013年有贷款类型C的观察和回归,但2012年没有。但是,我想假设贷款类型C的2011 beta系数使用2012年参数预测2013年数据。

如何实现这一目标?任何意见都将不胜感激。

0 个答案:

没有答案