Сообщение об ошибке исходит от функции integrate
, которая используется в MESS::auc
.
Точнее, он исходит из аргумента subdivisions
(максимальное количество подинтервалов), который по умолчанию равен 100. Однако в вашем случае более высокое значение, вероятно, будет иметь больше смысла.
Быстрое и простое исправление (но не очень надежное!) - копирование + вставка функции auc в скрипт R, адаптация ее к вашим потребностям (см. Ниже), а затем исходный код это, прежде чем использовать его.
Вот как это работает:
- Скопируйте + вставьте функцию auc в скрипт R и сохраните ее как
mess_auc_adapted.R
- Назначить функцию как
auc
(auc <- function...
).
- В функции auc измените последний бит:
res <- integrate(myfunction, lower = from, upper = to)$value
становится
res <- integrate(myfunction, lower = from, upper = to, ...)$value
- Затем используйте
auc
следующим образом:
source("mess_auc_adapted.R")
auc(x = df$Time, y = df$WT1, from=min(df$Time, na.rm = TRUE),
to = max(df$Time, na.rm = TRUE) ,type = 'spline', subdivisions = WHATEVER_NUMBER_THAT_MAKES_SENSE)
A Лучшее решение - связаться с сопровождающим, рассказать им о своей проблеме и возможном решении. Просто откройте вопрос здесь: https://github.com/ekstroem/MESS/issues. Таким образом, проблема может быть решена напрямую.