Multinom与计数矩阵作为响应

时间:2014-03-10 06:50:23

标签: r multinomial nnet

根据multinom的帮助,包nnet,“响应应该是具有K列的因子或矩阵,将被解释为每个K类的计数。”我尝试在第二种情况下使用此函数,获取错误。

以下是我所做的示例代码:

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))。鉴于多项式线性logit回归应仅适用于连续或二分预测器,我无法理解这在数学上是如何可能的。

1 个答案:

答案 0 :(得分: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