glmmTMB_分类:矩阵::rankMatrix(TMBStruc$data.tmb[[whichX]])中存在错误:长度(d〈- dim(x))== 2不为TRUE

toiithl6  于 2023-01-03  发布在  其他
关注(0)|答案(1)|浏览(91)

我正在尝试运行以下模型:

mod1<- phylo_glmmTMB(response ~ sv1 + # sampling variables
sv2 + sv3 + sv4 + sv5 + 
sv6 + sv7 +  
(1|phylo) + (1|reference_id), #random effects
ziformula = ~ 0,
#ar1(pos + 0| group) # spatial autocorrelation structure; group is a dummy variable
phyloZ = supertreenew,
phylonm = "phylo",
family = "binomial",
data = data)

但我一直收到错误:

Error in Matrix::rankMatrix(TMBStruc$data.tmb[[whichX]]) : 
length(d <- dim(x)) == 2 is not TRUE

这个错误也发生在我找到的其他可重现的示例(data)中。
在运行模型之前,我刚刚加载了数据(datasupertree),并根据supertree计算了一个Z矩阵:

#Compute Z matrix
#supertreenew <- vcv.phylo(supertreenew) 
#or
supertreenew <- phylo.to.Z(supertreenew)
#enforced match between
supertreenew <- supertreenew[levels(factor(data$phylo)), ]

我已通过以下方式安装了开发版本:

remotes::install_github("wzmli/phyloglmm/pkg")

但没有成功。
我的supertree的尺寸是:
1...[351]
2[645]
你猜怎么着?
非常感谢,
我的会话信息:
R版本4.2.2(2022年10月31日ucrt)平台:x86_64-w64-mingw32/x64(64位)运行环境:Windows 10 x64(内部版本22621)矩阵产品:默认附加的基础软件包:[1]统计数据图形grDevices实用程序数据集方法库
其他随附 Package :[1]系统发生率_0.1.0.9001 brms_2.18.0 cpp_1.0.9性能_0.10. DHARMa_0.4.6
[6]植酸酶工具_1.2 - 0图谱_3.4.0 ape_5.6 - 2 1me4_1.1 - 31基质_1.5 - 1
[11]测试模块_1.9.1测试模块_1.1.5.9000遥控器_2.4.2

6rqinv9w

6rqinv9w1#

  • (第一个错误,“Error in Matrix::rankMatrix”)这是由于在glmmTMB的最新版本中添加了固定效应矩阵秩检查。
control = glmmTMBControl::glmmTMBControl(rank_check = "skip")

到您的phylo_glmmTMB调用应该可以解决该问题。

  • (第二个错误,“Error in getParameterOrder(data,parameters,new.env(),DLL = DLL)...”)我刚刚更新了refactor分支来处理这个问题[由glmmTMB中的内部更改引起]。使用remotes::install_github("wzmli/phyloglmm/pkg@refactor")安装这个版本,然后重试您的示例。

相关问题