Python StatsModels Patsy解决了这个问题,在没有模型参数的情况下进行预测

Python StatsModels Patsy解决了这个问题,在没有模型参数的情况下进行预测,python,regression,statsmodels,predict,patsy,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', 'FH

我正在对按年份细分的抵押贷款数据进行回归分析。所有变量都是分类的虚拟变量。在某些年份,抵押贷款的某些特征或特征可能在其他年份中不存在,因此我得到一个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预测设施的结构中为不存在的变量插入贝塔系数,最好是前一年的贝塔系数。例如:

   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年没有。然而,在使用2012年参数预测2013年数据时,我想假设贷款类型C的2011年贝塔系数

如何做到这一点?如有任何意见,将不胜感激