我正在使用gmnl
函数来拟合混合多项logit模型。由于我对该模型的预测生育能力更感兴趣,我想通过应用像predic
函数这样的东西来获得它们。
m4=gmnl(int_choice ~ 1+fico+annual_inc+int_emp_length+| time +grade+ last_fico |0, data = mldata, model="mixl",R=50,panel=TRUE,correlation = TRUE,ranp=c(annual_inc="n",int_emp_length="n"))
## how to mimic predict??
p_hat=predict(m4,type="probs")
有什么建议?
您正在寻找的是一个简单的转换规则,如下所示:
prob = odds / (1 + odds)
。有关示例的非常好的解释可以在这里找到:https://sebastiansauer.github.io/convert_logit2prob/
解决方案无法在插图中找到,但在帮助文件中有记录。键入help("fitted.gmnl")
会产生以下结果:
fitted(object, outcome = TRUE, ...)
如果为TRUE,则拟合和残差方法返回对应于所选备选方案的向量,否则返回矩阵,其中每列对应于每个备选方案。
我在gmnl模型上输入str()我发现一个名为prob.alt的内部属性给出了选择 - 残差所以在你的情况下m4 $ prob.alt给出一些有用的值,(找到max by row给出预测的选择)
(在我的情况下(潜在的类mnl)这没有帮助,因为它具有预测的潜在类概率)