0

我有一个关于如何使用 R 中的 mlogit 包来分析离散选择调查数据的问题。我们的调查是关于要求人们从不同的保险单中进行选择(具有免赔额和保费两个属性)。

我用来拟合混合 logit 的代码是:

[1] ml <- mlogit.data (mydata, choice="choice", shape = "wide", id = "individual", 
               opposite =c ('deductible', 'premium'),varying = 5:10)

[2] ml.w5 <- mlogit (choice~deductible+premium|0, ml, panel = TRUE, 
             rpar = c(deductible='ln', premium='ln'), 
             R = 100, halton = NA, print.level=0)

我尝试使用对数正态,因为我们希望免赔额和保费的系数都是负数。我在 [1] 中使用“相反”来反转符号,因为对数正态总是正的。

但我总是收到错误警告:

"Error in if (abs(x - oldx) < ftol) { : missing value where TRUE/FALSE needed
In addition: Warning message: In log(start[ln]) : NaNs produced"

我仔细检查了数据,并确定没有任何丢失的数据。如果我将对数正态“ln”更改为“n”或“cn”,它将在没有任何警告的情况下工作。

有谁知道如何处理这个?谢谢您的帮助。

4

0 回答 0