R 错误 : Error in `row.names<-.data.frame` (`*tmp*` , 值 = 值)

标签 r statistics probability logistic-regression

我只是组成一个数据集来测试代表“多项逻辑回归模型”的函数“mlogit”

数据很简单:

head(dat)
   y x1 x2 x3
 1 4  1 18  4
 2 5  1 20  5
 3 2  1 25  3
 4 3  0 26  6
 5 4  0 26  8
 6 3  1 27  4

然后当我输入
fit <- mlogit(y ~ x1 + x2 + x3, data=dat)

出现以下消息:
Error in `row.names<-.data.frame`(`*tmp*`, value = value) : 
  invalid 'row.names' length

有谁知道为什么或如何解决它?

最佳答案

帮助说明:

The ‘data’ argument may be an ordinary ‘data.frame’. In this case, some supplementary arguments should be provided and are passed to ‘mlogit.data’.



你没有给出任何补充论据。请注意,我认为这个文档很差,因为它没有说明应该提供哪些补充论据。

从例子来看,似乎至少应该设置“形状”和“选择”:
 # a data.frame in wide format with two missing prices
 Fishing2 <- Fishing
 Fishing2[1, "price.pier"] <- Fishing2[3, "price.beach"] <- NA
 mlogit(mode~price+catch|income, Fishing2, shape="wide", choice="mode", varying = 2:9)

 # a data.frame in long format with three missing lines
 data("TravelMode", package = "AER")
 Tr2 <- TravelMode[-c(2, 7, 9),]
 mlogit(choice~wait+gcost|income+size, Tr2, shape = "long",
        chid.var = "individual", alt.var="mode", choice = "choice")

顺便说一句,欢迎来到 stackoverflow!这里有一些技巧可以帮助你写出更好的问题,从而增加得到好的答案的机会。
  • 你应该说明你的命令来自哪个包。我假设它来自 mlogit 包,但 mlogit 命令在每个包中。
  • 你应该举一个最小的例子。你给出 head 的输出命令,但不清楚是否可以用它重现错误。 library(mlogit)也应该在您的最小示例中给出。
  • 您应该阅读该命令的帮助。帮助文件可能令人生畏且技术性很强,但您不必了解其中的所有内容。在你的例子中,我猜 some supplementary arguments should be provided会向你跳出来。如果您不确定如何访问命令的帮助 mlogit ,您可以使用 ?mlogithelp(mlogit) .
  • 关于R 错误 : Error in `row.names<-.data.frame` (`*tmp*` , 值 = 值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23458962/

    相关文章:

    r - 使用 a.m./p.m 解析时间戳

    renderImage 不显示 - R Shiny(仅替代文本)

    r - 对 R 中的整洁数据同时执行多个 t.tests

    r - 在行之间应用函数,按变量分组,计算其他列中变量之间的所有可能组合

    r - 在 R 与 sum(Dataframe$columns)/N 中使用聚合函数有何不同?

    在项目之间反复选择后确定排名的算法

    java - 生成随机长用户 ID

    probability - 在 Maple 中定义随机变量序列?

    artificial-intelligence - 学习概率图形模型的好资源

    matlab - 如何查看 Matlab 函数背后的 Matlab 代码