首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何修复'Error in sdata[[paste0("Y",usc(Resp)]]:R中的下标越界‘,使用brms包

如何修复'Error in sdata[[paste0("Y",usc(Resp)]]:R中的下标越界‘,使用brms包
EN

Stack Overflow用户
提问于 2019-01-10 19:39:40
回答 1查看 92关注 0票数 0

我正在尝试使用brms设置我的传销的前科。我已经用我之前设置的模型运行了我的模型,没有错误消息,现在想用pp_check检查它们。我得到了一个'Error in sdata[paste0("Y",usc(resp))]:subscript out bounds‘错误,并且找不到任何关于为什么会发生这种情况的提示。谢谢!

编辑:我已经检查了fit的结构,只有init变量是0,我认为应该是这种情况,因为我将初始化参数设置为0?否则,我看不出有什么问题。

我不能尝试任何东西,因为谷歌搜索什么都没有。

代码语言:javascript
复制
library(brms)
df <- data.frame( subjno = as.factor(c('sub-01', 'sub-01','sub-01','sub-01','sub02','sub02','sub02','sub02')),
              L1 = c(0.898922096, -0.673393065, -2.240150247,-0.932520537, -0.472701111, -0.188825324,0.808675919, 0.293666248), 
              L2 = c(0.64888, 2.0891, -0.655322708, 0.007098555, -0.648887797, -0.249716343, -0.698128026,0.119511014), 
              W1 = c(0.5,0.5,-0.5,-0.5,0.5,-0.5,0.5,-0.5), W2 = c(0.5,-0.5,0.5,-0.5,0.5,0.5,-0.5,-0.5),
              t = as.factor(c(12,23,34,45,12,23,34,45)))

ff_s = brmsformula(cbind(L1,L2) ~ W1 * W2 * t +  
                     (W1*W2* t|p|subjno)) 

get_prior(formula = ff_s, family = gaussian(),
      data = df)

pp_s <- c(set_prior('normal(0,1)', class = "b"),  
    set_prior("normal(0,10)", class = "sd", resp = 'L1'), 
    set_prior("normal(0,10)", class = "sd", resp = 'L2'), 
    set_prior("normal(0,5)", class = "sigma",resp = 'L1'), 
    set_prior("normal(0,5)", class = "sigma",resp = 'L2'),
    set_prior("normal(0,10)", class = "Intercept", resp = 'L1'),
    set_prior("normal(0,10)", class = "Intercept", resp = 'L2'),
    set_prior("lkj(3)", class = "cor"))

fit_s <- brm(formula = ff_s, 
          data = df, family = gaussian(),
          prior = pp_s,
          chains = 6, cores = 3,
          iter = 2e3, warmup = 1e3,
          init = 0,
          sample_prior = "only")

pp_check(fit_s)
EN

回答 1

Stack Overflow用户

发布于 2019-01-11 19:32:26

我发现我在调用函数pp_check时没有指定我感兴趣的级别,问题解决了!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54127905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档