多項ロジットモデル
install.packages("mlogit")
library("mlogit")
zm <- mlogit.data(z,shape = "wide", choice = "f1_f”)
#mlogit.data(データ名 , shape = “データの型” , varying = 変数の場所を指定 , choice = “選択行動を指定”)
#データをmlogit関数で使える形に変える
result <- mlogit(f1_f~0|ef_ha+ef_an+ef_di+ef_sa|0,zm)
#mlogit (従属変数(カテゴリー)~ 共通係数を推定 | 個人に固有のもの | それ以外 , データ名)
summary(result)
#結果の出力
離散選択モデルの選択肢について
前提
- 相互排除性…離散選択モデルの選択肢から選ばれる数は常に1つではなればならない
- 網羅性…離散選択モデルでは全ての選択肢が選択可能なものとして網羅されている必要がある
- 選択肢の数が有限である
library("MASS")
z <- read.csv("data33.csv",header = TRUE)
z$f1_f <- factor(z$f1,levels = 1:5,labels=c("SA","FE","HA","DI","AN"))
#名義の作成
attach(z)
z$ef_ha <- (e1+e4+e5)
z$ef_an <- (e2+e3+e7)
z$ef_di <- (e7+e10+e9)
z$ef_sa <- (e8+e11+e12)
#因子得点化してる。項目数が同じだから、項目数で割るところを省いている。
data_z <- z[,63:66]
(result_z <- lda(data_z,z$f1_f))
#lda関数は基本的に線形判別分析を行うが、従属変数が3群以上になると正準判別分析を行っている。
#2群の場合は線形も正準も同じ結果になる
コメント
コメントを投稿