1

私は mlogit を使用して、靴の購入習慣に関する調査から得られた嗜好データを分析しています。現在、次のコードを実行しています。

library("mlogit") 

Running <- read.csv(file="DiscreteChoiceDatav3.csv", head=TRUE, sep=",")

RS <- mlogit.data(Running, choice="Selected", shape="long", alt.levels=c("1", "2", "3", "4"), id.var="ResponseID", varying=NULL)

m1 <- mlogit(Selected ~ Brand + Cushioning + Fit + LnPrice + EXP_Weight | 0 | 0, data=RS)  

summary(m1)

私が満足しているこれらの結果を生成しているのは次のとおりです。

Call:
mlogit(formula = Selected ~ Brand + Cushioning + Fit + LnPrice + 
    EXP_Weight | 0 | 0, data = RS, method = "nr", print.level = 0)

Frequencies of alternatives:
      1       2       3       4 
0.26859 0.24571 0.24142 0.24428 

nr method
4 iterations, 0h:0m:1s 
g'(-H)^-1g = 6.77E-08 
gradient close to zero 

Coefficients :
                      Estimate Std. Error  t-value  Pr(>|t|)    
BrandAAA            -0.4072202  0.0559660  -7.2762 3.433e-13 ***
BrandBBB            -0.5661727  0.0634774  -8.9193 < 2.2e-16 ***
BrandCCC            -0.9346379  0.0575556 -16.2389 < 2.2e-16 ***
BrandDDD            -0.6891785  0.0600212 -11.4823 < 2.2e-16 ***
CushioningModerate   0.7806761  0.0535750  14.5716 < 2.2e-16 ***
CushioningSoft       0.4684838  0.0568556   8.2399 2.220e-16 ***
CushioningVery Soft  0.2816491  0.0727461   3.8717 0.0001081 ***
FitSnug              0.5565443  0.0469520  11.8535 < 2.2e-16 ***
FitTight             0.0280130  0.0509774   0.5495 0.5826506    
LnPrice             -0.3744333  0.0760356  -4.9245 8.460e-07 ***
EXP_Weight          -0.0214945  0.0015584 -13.7927 < 2.2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Log-Likelihood: -5316.9

ここで、回答者に関する以前の人口統計データを使用して、サンプルを 3 つのフィットネス カテゴリ (低 / 中 / 高) に分割したいと考えています。次の表に示すように、新しいセグメント化されたブランド変数と新しいダミー変数を作成して、そうしようとしました。

ここに画像の説明を入力

ただし、ブランド価値などの要因が回答者の適応度によってどのように変化するかを調査するのに役立つことを目的とした最も単純なモデルでさえ実行しようとすると、「計算上特異な」エラーが発生します。

> m1 <- mlogit(Selected ~ Brand + Brand_Medium | 0 | 0, data=RS)  
Error in solve.default(H, g[!fixed]) : 
  system is computationally singular: reciprocal condition number = 1.09477e-17
> m1 <- mlogit(Selected ~ Brand_Medium | 0 | 0, data=RS)  
Error in solve.default(H, g[!fixed]) : 
  system is computationally singular: reciprocal condition number = 1.06423e-17

私がどこで間違っているのか、誰かが何か考えを持っていますか? どうもありがとう。

4

0 に答える 0