Библиотека автозагрузки R при загрузке файла данных

Есть ли возможность определить библиотеку, которая загружается при чтении сохраненного объекта в файле .rdata. Например: после запуска:

library(data.table)
dt1 = data.table(a=1:10,b=letters[1:10])
save(dt1,file="dt.rdata")

dt1 сохраняется dt.rdata.

Увы, при чтении этого файла в первозданном сеансе R (например, двойным щелчком по файлу в проводнике Windows) dt1 доступен, но соответствующие команды data.table можно использовать только после выдачи дополнительного

library(data.table)

в только что открытом сеансе R. Есть ли способ определить в файле данных, что определенные пакеты должны быть загружены или какие-то другие команды должны быть выполнены до/после чтения в соответствующем файле?


person jf1    schedule 25.11.2016    source источник
comment
Может быть, проще всего поместить это в функцию. Что-то вроде myReader <- function(fileName) {; require(data.table); load(fileName);};. Затем прочитайте данные myReader("dt.rdata").   -  person lmo    schedule 25.11.2016
comment
Двойной щелчок по файлу не делает его частью воспроизводимого рабочего процесса анализа. Это нормально для одноразовых операций, но, по моему опыту, одноразовые операции быстро переполняются сценариями и наличием всех необходимых шаблонов (вызовы library(), настройки по умолчанию, раздел чтения данных, раздел очистки данных, EDA, модели, диаграммы) сохраняет много боли в долгосрочной перспективе.   -  person hrbrmstr    schedule 25.11.2016


Ответы (1)


Сохраните данные в другом рабочем пространстве и добавьте функцию .First, которая загружает библиотеку.

.First <- function(){library(data.frame)}
person kaliczp    schedule 25.11.2016