choicemodelr:Ops.data.frame 中的错误:“==”仅针对同等大小的数据帧定义

2024-04-29

我正在分析联合数据(测试数据)的数据,为真实数据做好准备。

数据文件具有所需的形式(UnitID Set Alt X_1 ... X_natts y),其中 y 是离散的。在每个选择集中,我有 3 个选项(alt:1-3)以及一个无选择选项(alt:4)。自变量采用效果编码 (1, 0, -1)。据我所知,这些数据符合所需的格式。

但是,我无法估计系数。如果我在没有人口统计变量的情况下运行模型,则会收到以下错误:

Ops.data.frame(data[ 1], ID[i]) 中的错误:
‘==’仅针对相同大小的数据帧定义

使用人口统计变量我得到以下信息:

错误:演示中的行数不等于单元数

到目前为止,我在互联网上没有找到错误解释,也不知道如何解决这个问题。我想,这是我没有看到的数据文件中的一个简单错误。我已经尝试使用不同的编码,但遇到了相同的错误。这是我使用的代码:

> xcoding=c(0,0,0,0,0,0,0,0,0,0,0,0,0,0)
> mcmc = list(R = 20000, use = 10000)  
> options = list(none=FALSE, save=TRUE, keep=1)
> out = choicemodelr(data=robottest_bayes, xcoding, mcmc = mcmc, options = options)
> #with demographic variables
> out = choicemodelr(data=robottest_bayes, demos=robottest_bayes_demo, xcoding, mcmc = mcmc, options = options)

数据文件如下:

    > show(robottest_bayes)
# A tibble: 8,464 × 18
   respid  ques   alt apperance_burly apperance_intelligent apperance_pink features_car features_laundry features_compute
    <int> <int> <int>           <int>                 <int>          <int>        <int>            <int>            <int>
1       1     1     1               1                     0              0            1                0                0
2       1     1     2               0                     1              0            0                1                0
3       1     1     3               0                     0              1            0                0                1
4       1     1     4               0                     0              0            0                0                0
5       1     2     1               0                     1              0            0                0                0
6       1     2     2               0                     0              1            0                0                0
7       1     2     3               1                     0              0            0                0                0
8       1     2     4               0                     0              0            0                0                0
9       1     3     1               0                     0              1            0                0                0
10      1     3     2               1                     0              0            0                0                0
# ... with 8,454 more rows, and 9 more variables: features_dog <int>, features_vaccuum <int>, features_splines <int>,
#   brand_botpro <int>, brand_gizmobot <int>, price_10 <int>, price_11 <int>, nochoice <int>, choice <int>

> show(robottest_bayes_demo)
# A tibble: 529 × 3
   respid   sex   age
    <int> <int> <int>
1       1     0    42
2       2     0    55
3       3     0    37
4       4     0    35
5       5     1    41
6       6     1    35
7       7     0    56
8       8     0    27
9       9     1    36
10     10     1    42
# ... with 519 more rows

您可以尝试从数据文件中排除无选择选项的行,并将脚本修改为:

options = list(none=TRUE, save=TRUE, keep=1)

由于有 3 个选项,对于受访者选择“无选择选项”的选择集,选项编号将为“选项数量+1”,即 4。ChoiceModelR 将识别“无选择选项”被选中。

根据p。 ChoiceModelR 的小插图 5,

none:设置为 TRUE 以估计无参数,并且数据不包含“none”(即没有选择)的行(默认为 FALSE)。

试试是否有效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

choicemodelr:Ops.data.frame 中的错误:“==”仅针对同等大小的数据帧定义 的相关文章

  • 使用 R 从字符串中提取函数参数

    最好使用stringr包 我想创建一个函数extract 以字符串向量作为参数 vec lt c div span icon hospital user i18n t Enrolments or i18n t Paper a string
  • 从 R 到 C 处理列表并访问它

    我想使用从 R 获得的 C 列表 我意识到这个问题与此非常相似 使用 call 在 R 和 C 之间传递数据帧 https stackoverflow com questions 6658168 passing a data frame f
  • 将天气 iframe 嵌入到 Shiny Dashboard 中

    我正在尝试将 Forecast io 的天气预报嵌入到闪亮的仪表板中 我最初在使用 符号时遇到了麻烦 但看到一篇文章提供了如何使用特殊字符格式化 HTML 代码的示例 但是 当我运行该应用程序时 我看到一个简单的 未找到 即使我知道该链接有
  • 在 mutate 和 across 之后使用 ~separate

    目的是将所有物种 setosa 行转换为一行 setosa 这是一个最小的示例 实际上有更多列和更多组 我有这个数据框 head iris 2 gt select 1 2 5 gt group by Species Sepal Length
  • 具有动态变量数的公式

    假设有一些 data framefoo data frame想要找到目标列的回归Y由其他一些专栏 为此目的 通常使用一些公式和模型 例如 linear model lt lm Y FACTOR NAME 1 FACTOR NAME 2 fo
  • R:为什么 boxplot(x,log="y") 与 boxplot(log(x)) 不同?

    delme lt exp rnorm 1000 1 5 0 3 boxplot delme log y boxplot log10 delme 为什么这两个图中的胡须不同 谢谢 阿古斯 我想说的是 在您的第一个图中 您只是将 y 轴更改为对
  • 从向量中删除元素在 R 中出现的时间量

    我想从一个向量中删除元素在另一个向量中出现的时间 就像我要减去它们一样 鉴于我想要删除的元素向量中的每个元素也存在于我想要从中删除的主向量中 a lt c A B B C C C b lt c A B C C a a in b return
  • jupyter 中的 r 图形 - 无法启动 png() 设备

    我在 Jupyter 中使用 R 但无法在笔记本本身中绘制图表 这是一个可重现的示例 set seed 123 mat as matrix x rnorm 100 y rnorm 100 plot mat 在朱皮特中 Error in pn
  • 在函数中使用 quit/q 会导致 RStudio 出现致命错误

    更多的是好奇 但当你使用时q or quit在 R studio 内的函数内部 它会导致致命错误 如下所示 但 rgui 中的相同函数会导致 R 像往常一样停止 并且仅使用q 在 RStudio 中按预期关闭 R 为什么q在函数中导致 RS
  • R data.table 连接不等式条件

    我想使用 data table 包根据多个不等式条件对数据进行子集化 data table 手册中的示例展示了如何使用字符变量执行此操作 但不显示数字不等式 我还了解了如何使用子集函数来执行此操作 但我真的很想利用 data table 二
  • R闪亮:使用闪亮的JS从数据表中获取信息

    我想读出所有列名称以及它们在数据表中显示的顺序 由于不同的原因 我无法使用 stateSave 等选项 我对 JS 没有什么把握 但我确信用它可以完成 所以我需要你帮助我 我尝试过类似的代码片段 datatable data callbac
  • 为每个因素级别添加日期时间序列

    我有一个带有因子列的数据框 s lt data frame id 901 910 s id lt as factor s id 我有一个日期时间序列 library lubridate start lt now as difftime 2
  • 改进R中从google获取股票新闻数据的功能

    我已经编写了一个函数来从 Google 获取和解析给定股票代码的新闻数据 但我确信有一些方法可以改进它 对于初学者来说 我的函数返回一个 GMT 时区的对象 而不是用户当前的时区 如果传递的数字大于 299 它就会失败 可能是因为 goog
  • 在`rmarkdown`中,如何在句子中添加图标?

    In rmarkdown 如何在句子中添加图标 例如如下 如何添加markdown icon单词 Markdown 和 is 之间 有一个很好的 R 包 可以轻松下载 RMarkdown 文档并将图标添加到其中 icons https gi
  • 根据 row_number() 过滤 data.frame

    更新 自从提出这个问题以来 dplyr 已经更新 现在按照 OP 的要求执行 我正在尝试获取第二行到第七行data frame using dplyr 我正在这样做 require dplyr df lt data frame id 1 1
  • 空间数据xyz到矩阵

    我有一个大数据框 100 000 行 其中包含 LON LAT VALUE 我想将其转换为矩阵 EPSG 中的坐标 3035 我使用以下命令尝试了 reshape2 包 acast df lon lat value var value 效果
  • zsh:未找到命令:使用 Big Sur Mac 的终端上的 R

    我从官方 cran 网站安装了 R 我可以从 Rstudio 运行 R 但是当我尝试从终端使用 R 时 我得到以下结果 base ege Eges MBP R zsh command not found R base ege Eges MB
  • R参考类问题

    我正在尝试在 R 中创建一个简单的参考类 这是我的代码 R 初学者 MyClass lt setRefClass MyClass fields list a numeric b numeric methods list initialize
  • 函数“[<-”将_替换_一个元素,但不会追加_元素_

    我在使用时注意到以下几点 lt 我成功于替换元素但不位于追加向量的一个元素 例子 VarX lt integer VarX 1 lt 11 lt VarX 2 22 VarX 1 11 Expected the value of VarX
  • 通过 r markdown 中的循环创建代码片段

    如同如何使用R中的knitr创建一个包含代码块和文本的循环 https stackoverflow com questions 36373630 how to create a loop that includes both a code

随机推荐