2016-05-04 16 views
0

のための「relevel」私持って、次のデータ:多項回帰エラー:唯一の要因

Class Batch Parity EB 
0 2 2 842.8302684 
0 2 3 1435.313822 
0 2 3 615.32252 
1 3 2 428.0919074 
1 3 3 629.6284765 
1 3 2 428.0919074 
. . . . 
. . . . 

私はmlogitパッケージを使用して多項回帰を実行していますが、バックの問題を持つ:

Error in relevel.default(attr(mf, "index")[["alt"]], reflevel) : 
    'relevel' only for factors 

でしたあなたがしてください私が間違っている場所を見てみましょう。 モデルは:

model<-mlogit(Class~EB+DFS+Batch+Parity, data=dat, reflevel="1") 

クラスとバッチクラス(0または1)とカテゴリとバッチ(1〜6)です。モデルを実行する前に、私はこれが要因にクラスとバッチを転送するために適用される:

dat$Class<-as.factor(dat$Class) 
dat$Batch<-as.factor(dat$Batch) 

はどうもありがとうございました!

+0

@ eipi10:クラスは現在0または1としてコード化されています。そのため、私はas.factorを適用してそれらを考慮に入れています。さらに、私がClassとtrue/falseをコード化するとき、エラーはまだ同じです – hieu

+1

mlogit関数を調べました。それは、mlogit.dataクラスのデータフレームでうまく動作するようです。幸いにも、あなたのdata.frame上でmlogit.data()を使用して、mlogit.dataクラスにすることができます。これを調べましたか? – AOGSTA

+0

@アーマン:私はあなたの提案を適用し、それは働いた。ありがとう – hieu

答えて

1

私は同じエラーがあり、 "mlogit.data()"で再構成されたデータセットではなく、実際のデータセットを使用していることを認識しました。

関連する問題