У меня есть функция в пакете R, которая в основном просто ищет пары ключ-значение из фрейма данных. В настоящее время у меня есть этот фрейм данных (.dat_oa
), хранящийся в "R / sysdata.rda", а LazyData
установлен в true
в файле пакета "DESCRIPTION". Если бы я ничего не изменил, это означало бы, что в первый раз, когда я запускал соответствующую функцию, к времени выполнения добавлялась секунда. После этого он будет работать более или менее мгновенно. Я чувствую, что отсутствие согласованности будет плохо смотреться для конечного пользователя, и я бы предпочел снять штраф за время загрузки данных до момента загрузки пространства имен пакета, т.е. переключение отложенной загрузки для объекта .dat_oa
. В настоящее время я добился этого, добавив следующий код в мой файл "R / zzz.r":
.onLoad <- function(libname, pkgname){
invisible(.dat_oa)
}
Это работает, но выглядит как выдумка. Есть ли более элегантный способ? Я не хочу устанавливать LazyData
в false
в файле пакета «ОПИСАНИЕ», так как я все еще хочу использовать отложенную загрузку для наборов данных пакета.