【发布时间】:2012-07-28 14:18:18
【问题描述】:
我正在尝试使用特定值计算预测概率,但 R 显示以下错误:
Error in model.frame.default(Terms, newdata, na.action = na.omit, xlev = object$xlevels) :
variable lengths differ (found for 'x')
In addition: Warning message:
'newdata' had 1 rows but variable(s) found have 513 rows
这就是我想要做的:x1 是一个有 12 个级别的因子,而 x2 也是一个有 3 个级别的因子。
res4 <- multinom(y ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 - 1, data=dta, Hess=T)
nd <- data.frame(x11=0.10331384, x12=0.07992203, x13=0.06237817, x14=0.03313840, x15=0.12280702, x16=0.07407407, x17=0.07407407, x18=0.10331384, x19=0.08966862, x110=0.07017544, x111=0.15009747, x112=0.03703704, x22=1, x23=0, x3=1, x4=1, x5=mean(x5), x6=mean(x6, na.rm=T), x7=mean(x7), x8=mean(x8), x9=mean(x9))
predict(res4, type="probs", newdata=nd)
有什么帮助吗?
【问题讨论】:
-
你能给我们一个
dta和dput(head(dta))的小样本吗? -
另外,看起来您适合九个
xs 的模型,但您尝试使用超过九个变量进行预测。nd变量中绝对应该只有九个变量。
标签: r predict multinomial