Разработка пакета R: тест, который не проходит из-за не проверенной подфункции в пакете Mclust

Я разрабатываю пакет R и тестирую, что библиотека применяется для проверки. Ошибка возникает при загрузке функции из внешнего пакета Mclust ( https://cran.r-project.org/web/packages/mclust/index.html), который включает в себя анонимную функцию внутри. Эта функция не распознается с помощью requireNamespace (). Вот пример кода:

get.enr.bg.normfit <- function(x) {
    result <- c(NA, NA)
    if (requireNamespace("mclust")) {
      names(result) <- c("mean","sd")
      # fit two normal distributions to data
      # model <- Mclust(na.omit(x), G=2, modelNames="V")
      model <- mclust::Mclust(na.omit(x), G=2)
    ...

Тест выполняется, но не может найти дополнительную функцию mclust внутри:

Ошибка: отсутствует знак типа транскрипта (@test-expr-filter.R#53) --------------- не удалось найти функцию "mclustBIC

Проблема в том, что Mclust вызывает mclustBIC из анонимной функции внутри. Та же проблема возникает при запуске полной проверки пакетов в RStudio.

Загрузка необходимого пространства имен: mclust Ошибка в eval(expr, envir, enclos): не удалось найти функцию "mclustBIC" Вызовы: filterGeneExpr -> get.enr.bg.normfit -> -> eval -> eval

Есть ли стратегия, чтобы это исправить? Я также могу полностью зависеть от пакета mclust, но эта функция является необязательной, поэтому имеет смысл использовать только параметр require.

0 ответов

Другие вопросы по тегам