在R中使用混合logit模型进行预测

时间:2018-06-18 06:23:10

标签: random coefficients

我有兴趣使用混合logit模型进行预测。 R中有功能/包可以帮我吗?如果没有,它是如何以数学方式接近的。我知道系数是随机的,因此,一种非常天真的方法是从beta的分布中得出并从样本X中取出均值。

2 个答案:

答案 0 :(得分:0)

这可能就是你要找的东西:

  

mlogit是R的一个软件包,它可以使用单个和/或替代的特定变量来估计随机效用模型。实现了基本多项式模型(异方差,嵌套和随机参数模型)的主要扩展。

一些有用的参考资料:

答案 1 :(得分:0)

您可以直接使用predict功能

library("mlogit")
data("Mode", package="mlogit")
Mo <- mlogit.data(Mode, choice = 'choice', shape = 'wide', 
              varying = c(2:9))  
# starting values of the beta coefficients
strt <- c(1.83086600, -1.28168186,  0.30935104, -0.41344010, -0.04665517,  
          1,0.25997237,0.73648694,  1.30789474, -0.79818416,  0.43013035)
p1 <- mlogit(choice ~ cost + time, Mo, seed = 20, 
         R = 100, probit = TRUE, start = strt)

Mo2 <- Mo
Mo2[Mo2$alt == 'car', 'cost'] <- Mo2[Mo2$alt == 'car', 'cost'] * 2
newShares <- apply(predict(p1, newdata = Mo2), 2, mean)

希望这能回答您的问题