3

multinom、パッケージのヘルプによるとnnet、「応答は、K クラスのそれぞれのカウントとして解釈される、K 列の因子または行列である必要があります。」2 番目のケースでこの関数を使用しようとすると、エラーが発生しました。

これが私がしていることのサンプルコードです:

response  <- matrix(round(runif(200,0,1)*100),ncol=20) # 10x20 matrix of counts
predictor <- runif(10,0,1)
fit1 <- multinom(response ~ predictor)
weights1 <- predict(fit1, newdata = 0.5, "probs")

ここで私が得るもの:

'newdata' had 1 row but variables found have 10 rows

どうすればこの問題を解決できますか?

おまけの質問: multinom を要因の予測子と共に使用できることにも気付きましたpredictor <- factor(c(1,2,2,3,1,2,3,3,1,2))。多項線形ロジット回帰は連続または二分予測子でのみ機能する必要があるため、これが数学的にどのように可能であるかを理解できません。

4

1 に答える 1

0

新しい変数の予測を取得する最も簡単な方法は、新しいデータを data.frame として定義することです。

サンプルコードの使用

> predict(fit1, newdata = data.frame(predictor = 0.5), type = "probs")
 [1] 0.07231972 0.05604055 0.05932186 0.07318140 0.03980245 0.06785690 0.03951593 0.02663618
 [9] 0.04490844 0.04683919 0.02298260 0.04801870 0.05559221 0.04209283 0.03799946 0.06406533
[17] 0.04509723 0.02197840 0.06686314 0.06888748
于 2014-10-27T22:18:04.237 に答える