Как убедиться, что пользователь блестящего приложения использует правильные версии пакетов в R - PullRequest
0 голосов
/ 25 мая 2019

Из-за недавнего опыта с несколькими ошибками, созданными при обновлении пакетов, мне интересно, как лучше всего решить следующую проблему:

В настоящее время я предоставляю отдельную версию, так сказать, моего блестящего приложения (только файлы сценариев для его локального запуска) и запускаю длинный список функций require () для загрузки / установки необходимых пакетов. Тем не менее, в конце я бы хотел использовать фиксированные версии пакетов, чтобы избежать ошибок, создаваемых изменениями в пакетах.

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

1 Ответ

0 голосов
/ 25 мая 2019

Вы можете рассмотреть возможность использования packrat: https://rstudio.github.io/packrat/.

К сожалению, частные библиотеки работают плохо;Как и все библиотеки R, их содержимое компилируется для вашей конкретной архитектуры компьютера, операционной системы и версии R. Packrat позволяет сделать снимок состояния вашей частной библиотеки , которая сохраняет в каталоге вашего проекта любую информацию, которую должен иметь пакет для воссоздания той же частной библиотеки на другом компьютере .

Краткое руководство:

  1. RStudio - Файл - Новый проект - Новый каталог - Новый проект - «Выполнить: использовать путь» - Создать проект

  2. Введите в консоли R (Studio):

Код:

packrat::init() 
.libPaths() # test if libpath has changed
install.packages("reshape2") # installs within one of the packrat libpaths
Installing package into ‘C:/R/packRatTest/packrat/lib/x86_64-w64-mingw32/3.4.3’

Предполагается, что вы можете использовать иделиться проектами RStudio, но я думаю, что было бы трудно работать без них;).

...