以下のデータに対して離散選択モデリングを実行しようとしています。基本的に、30人のお客様には16種類のピザが用意されています。彼らは1種類以上のピザを選ぶことができ、選択したピザは選択肢の変数で示されます。R mlogitはsolve.defaultでエラーをスローします(H、g [!fixed]):システムは計算上単数です:逆数条件番号
pizza cust choice pan thin pineapple veggie sausage romano mozarella oz
1 1 Cust1 0 1 0 1 0 0 1 0 1
2 2 Cust1 1 0 1 1 0 0 0 0 0
3 3 Cust1 0 0 0 1 0 0 0 1 1
4 4 Cust1 1 0 1 1 0 0 0 0 0
5 5 Cust1 1 1 0 0 1 0 0 0 1
6 6 Cust1 0 0 1 0 1 0 1 0 0
7 7 Cust1 0 0 0 0 1 0 0 0 1
8 8 Cust1 1 0 1 0 1 0 0 1 0
9 9 Cust1 0 1 0 0 0 1 0 1 0
10 10 Cust1 1 0 1 0 0 1 0 0 1
11 11 Cust1 0 0 0 0 0 1 1 0 0
12 12 Cust1 0 0 1 0 0 1 0 0 1
13 13 Cust1 0 1 0 0 0 0 0 0 0
14 14 Cust1 1 0 1 0 0 0 0 1 1
15 15 Cust1 0 0 0 0 0 0 0 0 0
16 16 Cust1 0 0 1 0 0 0 1 0 1
17 1 Cust10 0 1 0 1 0 0 1 0 1
18 2 Cust10 0 0 1 1 0 0 0 0 0
19 3 Cust10 0 0 0 1 0 0 0 1 1
20 4 Cust10 0 0 1 1 0 0 0 0 0
私は以下のコマンドを使用してデータを変換します。私はchid.var = "chid"
とalt.levels=c(1:16)
を追加するようなここではほとんど変更を加えませんでした。 alt.levels
とalt.var
の両方を使用すると、ピザが既に存在し、置き換えられるというエラーが表示されます。しかし、どちらかを使用するとエラーは発生しません。
最後に、mlogitコマンドを使用すると、このエラーが発生します。
mlogit(choice ~ pan + thin + pineapple + veggie + sausage + romano + mozarella + oz, pz)
Error in solve.default(H, g[!fixed]) :
system is computationally singular: reciprocal condition number = 8.23306e-19
これは私の最初の投稿です。私はこのサイトを頻繁に訪れ、すでに解決策が見つかったので投稿する必要はありませんでした。私はthisのようなほぼすべての同様の投稿を1つしか無駄に使いました。私は離散選択モデリングを初めて学んだので、私がここで根本的な間違いをしているかどうかは分かりません。
また、私は実際にchid.var
が何をしているのかは分かりません。
お手数ですが、お手数ですが下記の通りです。将来のあなたの質問の読者のためにあなたのモデルが 'nnet'で動作するようになっていく方法の詳細を投稿できますか? – DirtStats