Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R Mlogit中包括选择性退出作为替代特定常数_R_Mlogit - Fatal编程技术网

在R Mlogit中包括选择性退出作为替代特定常数

在R Mlogit中包括选择性退出作为替代特定常数,r,mlogit,R,Mlogit,在我的硕士论文中,我正在做一个离散选择实验,研究一种治疗减肥的假想药物的属性偏好,我需要一些帮助 我的设计是通用的,有12个选项集,有三个选项:产品A、产品B和选项out 不知何故,我需要将option out作为一个可选的特定常量,但这里似乎我做错了什么。我对三个备选方案的12个选择集有197个回答,因此197*12*3个选择观察值=7092 > head(choice3, 12*3) id choice_id mode.ids choice noadveff tab infreq_3

在我的硕士论文中,我正在做一个离散选择实验,研究一种治疗减肥的假想药物的属性偏好,我需要一些帮助

我的设计是通用的,有12个选项集,有三个选项:产品A、产品B和选项out

不知何故,我需要将option out作为一个可选的特定常量,但这里似乎我做错了什么。我对三个备选方案的12个选择集有197个回答,因此197*12*3个选择观察值=7092

> head(choice3, 12*3)
id choice_id mode.ids choice noadveff tab infreq_3 cost weightloss weightlosssq optout
1        x1        A      0        1  -1       -1  550        3.5        12.25     -1
1        x1        B      0       -1   1        1   90        6.0        36.00     -1
1        x1        C      1        0   0        0    0        0.0         0.00      1
1       x10        A      0        1  -1        1   50        6.0        36.00     -1
1       x10        B      0       -1   1       -1  165        3.5        12.25     -1
1       x10        C      1        0   0        0    0        0.0         0.00      1
1       x11        A      0       -1  -1        1  165        2.0         4.00     -1
1       x11        B      1        1   1       -1   90        3.5        12.25     -1
1       x11        C      0        0   0        0    0        0.0         0.00     -1
1       x12        A      0       -1  -1        1  550        6.0        36.00     -1
1       x12        B      0        1   1       -1 1000        2.0         4.00     -1
1       x12        C      1        0   0        0    0        0.0         0.00      1
1       x13        A      0       -1  -1       -1   90        6.0        36.00     -1
1       x13        B      0        1   1        1 1000        6.0        36.00     -1
1       x13        C      1        0   0        0    0        0.0         0.00      1
1        x2        A      0       -1  -1       -1 1000        6.0        36.00     -1
1        x2        B      0        1   1        1  300        2.0         4.00     -1
1        x2        C      1        0   0        0    0        0.0         0.00      1
1        x3        A      0       -1  -1        1 1000        6.0        36.00     -1
1        x3        B      1        1   1       -1   50        6.0        36.00     -1
1        x3        C      0        0   0        0    0        0.0         0.00     -1
1        x4        A      0        1  -1        1  165        3.5        12.25     -1
1        x4        B      0       -1   1       -1  550        2.0         4.00     -1
1        x4        C      1        0   0        0    0        0.0         0.00      1
1        x5        A      0       -1  -1       -1  550        2.0         4.00     -1
1        x5        B      1        1   1        1   50        6.0        36.00     -1
1        x5        C      0        0   0        0    0        0.0         0.00     -1
1        x6        A      0        1  -1       -1  300        6.0        36.00     -1
1        x6        B      0       -1   1        1   50        3.5        12.25     -1
1        x6        C      1        0   0        0    0        0.0         0.00      1
1        x8        A      0       -1  -1        1  300        3.5        12.25     -1
1        x8        B      1        1   1       -1  165        6.0        36.00     -1
1        x8        C      0        0   0        0    0        0.0         0.00     -1
1        x9        A      0       -1   1       -1  300        6.0        36.00     -1
1        x9        B      0        1  -1        1   90        2.0         4.00     -1
1        x9        C      1        0   0        0    0        0.0         0.00      1
我对我的分类变量(noadfeff、tab、inferq_3和optout)使用效果编码

mode.id表示备选方案,即产品A或B,或选项out(mode.id==C)

optout变量已使用以下命令进行编码

choice2$optout <- ifelse(choice2$mode.ids == "C" & choice2$choice == 1, "1", "-1")
没有optout的类似模型不会出现任何问题,因此我的optout变量肯定出了问题

我希望你能看到问题在哪里?:)

最好的, 亨里克

对不起, 我自己发现了错误-下面提供了解决方案

choice2$optout <- ifelse(choice2$mode.ids == "C", "1", "-1")
选择2$optout
model.all <- mlogit(formula = choice ~ noadveff + tab + infreq_3 + cost + weightloss | optout | 0 ,
                     data = mlogit.all,
                     rpar = c(noadveff = 'n', tab = 'n', infreq_3 = 'n', weightloss = 'n', optout = 'u'),
                     R = 100,
                     halton = NA,
                     print.level = 0,
                     panel = TRUE
)
Error in solve.default(H, g[!fixed]) : 
Lapack routine dgesv: system is exactly singular: U[8,8] = 0
choice2$optout <- ifelse(choice2$mode.ids == "C", "1", "-1")
model.all <- mlogit(formula = choice ~ noadveff + tab + infreq_3 + cost + weightloss + optout | -1 | 0 ,
                     data = mlogit.all,
                     rpar = c(noadveff = 'n', tab = 'n', infreq_3 = 'n', weightloss = 'n'),
                     R = 100,
                     halton = NA,
                     print.level = 0,
                     panel = TRUE
)