Проблемы с импортом пакета

Я разрабатываю пакет и хочу импортировать все функции dplyr, поэтому я добавил

#' @import dplyr

К моей функции, которая сгенерировала пространство имен, которое выглядит так:

`# Generated by roxygen2 (4.1.1): do not edit by hand

export(process_text)
export(quick_match)
import(dplyr)`

Но затем, когда я загружаю пакет с помощью devtools::load_all(), я получаю сообщение об ошибке:

функции dplyr недоступны.

Что я делаю не так?


person Shorpy    schedule 10.09.2015    source источник


Ответы (2)


Вам также необходимо импортировать его в файл DESCRIPTION. Что-то вроде этого:

Package: <name>
Version: <version>
Date: <date>
Title: <title>
Author: <author>
Maintainer: <maintainer>
Depends:
    R (>= 2.13.0)
Imports:
    dplyr
Description: <description> 
License: GPL (>= 2)
person darwin    schedule 10.09.2015
comment
Правильно ли установлен dplyr? Можете ли вы загрузить библиотеку независимо от вашего пакета? - person darwin; 10.09.2015
comment
Да, если я использую библиотеку (dplyr) внутри функции, она работает нормально, но я бы предпочел загружать ее через пространство имен. Спасибо, что взялись за решение проблемы. - person Shorpy; 10.09.2015

Оказывается, вам нужно, чтобы пакет был указан в разделе «Зависит», а также в разделе «Импорт» файла DESCRIPTION. Следующее решило проблему для меня.

    Package: stringmatch
Title: Q-Gram filtering for approximate string matching
Version: 0.0.0.9000
Authors@R: 
Description: An implementation of q-gram filtering for fast levenstein distance matching
Depends:R (>= 3.2.2),
  dplyr
Imports:
  dplyr,
person Shorpy    schedule 11.09.2015