我正在尝试从 library(DirichletMultinomial)
复制工作流程。我有包含计数 count
和因子向量 pheno
的大矩阵。在执行狄利克雷多项式模型的下一步后,我根据 count
(分组)将 countp
的子集制作成 pheno
,如小插图中的示例所示 countp <- count[pheno %in% c("group1", "group2"), ]
每组:
bestgrp <- dmngroup(countp, pheno, k=1:15, simplify = FALSE, verbose=TRUE, .lapply = parallel::mclapply)
该过程运行了 8-12 个小时,但报告崩溃了:
invalid class “DMNGroup” object: undefined class for slot "elementMetadata" ("DataTable_OR_NULL")
我确信这个过程在崩溃后花了几个小时,因为我有以下代码
if(exists('bestgrp')) {
save(bestgrp, file = "NRR_DMM_bestgrp.Rda")
} else {
write(geterrmessage(), file = "!!!ERROR.txt") }
并获得保存错误消息的时间。由于 verbose=TRUE
在并行多核计算中不起作用,因此当它崩溃时我没有更具体的点。使用 count
处理的整个数据集 dmn
变得平滑。
我不是生物信息学家,并且是 R 计算的新手,因此当 Google 为错误消息返回 NULL 结果时,我完全迷失了。
任何人都可以帮忙吗?
最好的问候,马辛
答案 0 :(得分:0)
对于我正在使用的 R 4.0.3 版,我已将 Bioconductor 更新到 3.12 版。现在它起作用了。对于类似的问题,请查看 support.bioconductor.org/p/92281