レベルに問題があります...以下を実行しています:
library(mlogit)
panel.datasm = data.frame(
cbind(
round(runif(100, min=1, max=6)),
rep(1:20,each=5), runif(100, min=0, max=1),
runif(100, min=0, max=6),
runif(100, min=2, max=6) ,
runif(100, min=0, max=1),
runif(100, min=0, max=6),
runif(100, min=2, max=6) ))
names(panel.datasm) = c("choice", "id", "data_1991","data_1992",
"data_1993", "data2_1991", "data2_1992","data2_1993")
logit.data <- mlogit.data(panel.datasm, id = "id", choice = "choice",
varying= 3:5, shape = "wide", sep = "_")
エラーが発生し続けるError in Ops.factor(data[[choice]], alt) : level sets of factors are different
また、手動でレベルを割り当ててみました:
panel.datasm$id= factor(
panel.datasm$id,
levels = sort(as.character(unique(panel.datasm$id))) )
私は多くのことを試しましたが、何が間違っているのかわかりません。比較のために、以下をご覧ください。
data("Electricity", package = "mlogit")
head(Electricity)
Electr <- mlogit.data(Electricity, id = "id", choice = "choice",
varying = 3:26, shape = "wide", sep = "")
私が知る限り、これは私のデータ形式と同じです。何が起きてる?もう限界です。