SlideShare a Scribd company logo
Добавление данных
в пакет
Экспортируемые и внутренние данные пакета
Алексей Селезнёв
Мой telegram канал
Зачем добавлять в пакет данные
• Добавить в пакет данные, которые будут доступны конечному пользователю
• Внутренние данные пакета, которые используются исключительно в технических целях, и
не доступны пользователям пакета
• Добавить примеры необработанных данных
• Данные о состоянии работы пакета
• Пользовательские данные для работы с пакетом, конфигурация или авторизационные
данные
Экспортируемые данные
• Экспортируемые данные хранятся в отдельном каталоге data/
• Добавить в пакет экспортируемые данные можно командой usethis::use_data()
• usethis::use_data() создаёт каталог data, если его ещё нет
• Добавляет в каталог data .rda файлы
• Добавляет блок LazyData: true в DESCRIPTION файл
Внутренние данные
• Внутренние системные данные вашего пакета хранятся в R/sysdata.rda файле.
• В отличие от экспортируемых данных, все внутренние данные сохраняются в один файл
• Внутренние данные создаются с помощью команды usethis::use_data(internal = TRUE)
• Данная команда создаёт файл R/sysdata.rda
• При этом внутренние данные не экспортируются при подключении пакета
• При этом не вносятся никакие изменения в файл DESCRIPTION
Необработанные данные
• Необработанные данные хранятся в папке inst/extdata/
• Получить путь к сохранённым необработанным данным можно командой
system.file("extdata", package = “package_name")
Состояние пакета
Состояние пакета
Внутреннее состояние пакета
• При необходимости иметь возможность динамически изменять некоторые внутренние
данные пакета в ходе R сеанса создайте внутри него отдельную, пустую среду.
Постоянные пользовательские данные
• Если вам необходимо хранить системные данные, которые должны быть доступны между
разными R сеансами, то их необходимо хранить на жестком диске.
• При этом обязательно необходимо соблюдать спецификацию каталогов принятой для
вашей операционной системы, для определения директорий в которых вы будете хранить
файлы вашего пакета используйте функцию tools::R_user_dir():
• tools::R_user_dir("pkg", which = "data") – хранение данных
• tools::R_user_dir("pkg", which = "config") – хранение конфигов
• tools::R_user_dir("pkg", which = "cache") – хранение кешированных данных
• Альтарнативный способ предоставляет пакет rappdirs
Прочие каталоги пакета
• src/ - каталог для хранения скомпилированного кода, зачастую для функций, написанных
на С или С++.
• inst/ - для произвольных дополнительных файлов, файлы цитирования пакета, надстройки
для RStudio, rmarkdown шаблоны.
• tools/ - вспомогательные файлы, необходимые при настройке, обычно находятся в
комплекте со скриптом configure.
• exec/ - для исполняемых скриптов. В отличие от файлов, размещенных в других каталогах,
файлы внутри exec/автоматически помечаются как исполняемые. На сегодняшний день
более предпочтительным является каталог inst/.
СПАСИБО ЗА ВНИМАНИЕ

More Related Content

PDF
Как настроить запуск R скриптов по расписанию с помощью GitHub Actions
PDF
Chat GPT для дата аналитика. Примеры успешных и не успешных кейсов
PDF
Воркшоп: Анализ показателя качества ключевых слов в Google Ads API с помощью ...
PDF
14. мета пакет.pdf
PDF
12.wrapping-apis.pdf
PDF
10.release_on_cran.pdf
Как настроить запуск R скриптов по расписанию с помощью GitHub Actions
Chat GPT для дата аналитика. Примеры успешных и не успешных кейсов
Воркшоп: Анализ показателя качества ключевых слов в Google Ads API с помощью ...
14. мета пакет.pdf
12.wrapping-apis.pdf
10.release_on_cran.pdf

More from Алексей Селезнёв (20)

PDF
PDF
PDF
integration_between_rstudio_and_github.pdf
PDF
create_package_1.pdf
PDF
Бекенды dplyr
PDF
PDF
Многопоточность в R
PDF
PDF
Функции семейства apply
PDF
Зачем интернет маркетологу понимать что такое API. Разбираем устройство API G...
PDF
Как работать с API Google Analytics на языке R с помощью пакета googleAnalyti...
PDF
Учим язык R на примере SQL запросов (Product Star Conference)
PDF
Алексей Селезнёв - Как держать руку на пульсе с помощью информационных дайдже...
PDF
Алексей Селезнёв - Работа с Facebook Marketing API на Языке R
PDF
Три шага построения аналитики компании (Lviv iCamp 2018)
integration_between_rstudio_and_github.pdf
create_package_1.pdf
Бекенды dplyr
Многопоточность в R
Функции семейства apply
Зачем интернет маркетологу понимать что такое API. Разбираем устройство API G...
Как работать с API Google Analytics на языке R с помощью пакета googleAnalyti...
Учим язык R на примере SQL запросов (Product Star Conference)
Алексей Селезнёв - Как держать руку на пульсе с помощью информационных дайдже...
Алексей Селезнёв - Работа с Facebook Marketing API на Языке R
Три шага построения аналитики компании (Lviv iCamp 2018)

Add data to r package

  • 1. Добавление данных в пакет Экспортируемые и внутренние данные пакета Алексей Селезнёв
  • 3. Зачем добавлять в пакет данные • Добавить в пакет данные, которые будут доступны конечному пользователю • Внутренние данные пакета, которые используются исключительно в технических целях, и не доступны пользователям пакета • Добавить примеры необработанных данных • Данные о состоянии работы пакета • Пользовательские данные для работы с пакетом, конфигурация или авторизационные данные
  • 4. Экспортируемые данные • Экспортируемые данные хранятся в отдельном каталоге data/ • Добавить в пакет экспортируемые данные можно командой usethis::use_data() • usethis::use_data() создаёт каталог data, если его ещё нет • Добавляет в каталог data .rda файлы • Добавляет блок LazyData: true в DESCRIPTION файл
  • 5. Внутренние данные • Внутренние системные данные вашего пакета хранятся в R/sysdata.rda файле. • В отличие от экспортируемых данных, все внутренние данные сохраняются в один файл • Внутренние данные создаются с помощью команды usethis::use_data(internal = TRUE) • Данная команда создаёт файл R/sysdata.rda • При этом внутренние данные не экспортируются при подключении пакета • При этом не вносятся никакие изменения в файл DESCRIPTION
  • 6. Необработанные данные • Необработанные данные хранятся в папке inst/extdata/ • Получить путь к сохранённым необработанным данным можно командой system.file("extdata", package = “package_name")
  • 9. Внутреннее состояние пакета • При необходимости иметь возможность динамически изменять некоторые внутренние данные пакета в ходе R сеанса создайте внутри него отдельную, пустую среду.
  • 10. Постоянные пользовательские данные • Если вам необходимо хранить системные данные, которые должны быть доступны между разными R сеансами, то их необходимо хранить на жестком диске. • При этом обязательно необходимо соблюдать спецификацию каталогов принятой для вашей операционной системы, для определения директорий в которых вы будете хранить файлы вашего пакета используйте функцию tools::R_user_dir(): • tools::R_user_dir("pkg", which = "data") – хранение данных • tools::R_user_dir("pkg", which = "config") – хранение конфигов • tools::R_user_dir("pkg", which = "cache") – хранение кешированных данных • Альтарнативный способ предоставляет пакет rappdirs
  • 11. Прочие каталоги пакета • src/ - каталог для хранения скомпилированного кода, зачастую для функций, написанных на С или С++. • inst/ - для произвольных дополнительных файлов, файлы цитирования пакета, надстройки для RStudio, rmarkdown шаблоны. • tools/ - вспомогательные файлы, необходимые при настройке, обычно находятся в комплекте со скриптом configure. • exec/ - для исполняемых скриптов. В отличие от файлов, размещенных в других каталогах, файлы внутри exec/автоматически помечаются как исполняемые. На сегодняшний день более предпочтительным является каталог inst/.