2014-10-08 33 views
9

我有關於R中的mnlogit包的問題,​​我將在StackOverflow上詢問它,因爲它與特定的語言和庫有關,但是如果有人決定將其移動到交叉驗證(這是StackExchange站點最適合的艱難選擇)。用mnlogit在R中的多項Logit選擇模型()

我只是想確保我理解它是如何工作的,因爲文檔不是太詳細,我在這個軟件包上看到了一些令人困惑/衝突的博客條目,並且因爲我已經有兩年了,已經處理了選擇模型。

mnlogit的例子使用基本如下:

> require(mnlogit) 
> data(Fish) 
> head(Fish) 
      mode income  alt price catch chid 
1.beach FALSE 7083.332 beach 157.930 0.0678 1 
1.boat FALSE 7083.332 boat 157.930 0.2601 1 
1.charter TRUE 7083.332 charter 182.930 0.5391 1 
1.pier FALSE 7083.332 pier 157.930 0.0503 1 
2.beach FALSE 1250.000 beach 15.114 0.1049 2 
2.boat FALSE 1250.000 boat 10.534 0.1574 2 
> fm <- formula(mode ~ price | income | catch) 
> result <- mnlogit(fm, Fish, "alt", ncores = 2) 

我發現了什麼困惑是modealt。我會認爲因變量是多項選擇,它似乎是alt(沙灘,船,章程或碼頭)。

相反,它是這個邏輯變量,mode。什麼是mode

爲了澄清我的理解,我在主題上閱讀了R-Bloggers article。它實際上使事情通過重複Fish例子更混亂,但與描述以這種方式數據集的前同步碼:含有

數據幀:

mode - The choice set: beach, pier, boat, and charter 
price - price for a mode for an individual 
catch - fish catch rate for a mode for an individual 
income - monthly income of the individual decision-maker 
chid - decision maker ID 

它描述mode就好像它是alt然後沒有提及alt。誰可以給我解釋一下這個?

如果mode確實承擔爲R-博客文章中描述的離散選擇值,然後將模型formula(mode ~ price | income | catch)將是有意義的我...但mode是一個邏輯變量,所以我徹底糊塗了。

回答

2

哦,好的。我想我現在看到 - mode表示給定每個選項集的特徵,選擇四種可能的選擇中的哪一種。這就說得通了。