2016-12-21 9 views
0

Я создаю новый пакет и документирую таблицы поиска, хранящиеся в папке данных/папки, используя R-скрипт в соответствии с инструкциями здесь http://r-pkgs.had.co.nz/data.html. У меня есть две таблицы .rda, одна для поиска продукта на основе кода продукта, а другая - поиск категории на основе кода категории. (например, data/productlookup.rda)Не удается найти документальные данные

За исключением моих документированных данных, которые хранятся в папке R/пакета.

#' ProductDecodes: Extract info from Product Codes 
#' 
#' This package contains functions for the extraction of information 
#' from Product codes. 
#' 
#' @docType package 
#' @name productDecoding 
NULL 

#' Product lookup 
#' 
#' @source internal 
"productlookup" 

#' Category lookup 
#' 
#' @source internal 
"categorylookup" 

Однако, когда я пришел к roxygenise пакет, я получаю сообщение об ошибке с указанием .rda таблицы не могут быть найдены.

Error in get(name, envir = env) : object 'productlookup' not found 

Ошибка возникает, когда таблицы сначала загружаются в глобальную среду. Я хочу знать, возможно ли сделать пакет roxygenise без необходимости загружать .rda в глобальную среду? Я не понимаю, почему roxygenise нуждается в том, чтобы таблицы поиска находились в глобальной среде, чтобы их найти. Любая помощь/объяснение того, почему эта ошибка происходит, будет оценена по достоинству.

ответ

2

Это то, что я обычно делаю, и я только успешно протестирована с roxygen2 5.0.1:

#' Product lookup 
#' 
#' @format A data.frame with 200 rows and 2 variables: 
#' \itemize{ 
#' \item prod: product name 
#' \item val: product value in US$ 
#' } 
#' 
#' @source internal 
#' @name productlookup 
NULL 

Конечно, в результате чего страница помощи нуждается в дополнительной информации.

+0

Замечательно, что работает, единственный позор заключается в том, что некоторая информация в файле '.Rd' теряется, например: ' \ format {Объект класса \ code {data.frame} с 37 строками и двумя столбцами .} '. Но по крайней мере мне не придется загружать таблицы каждый раз, когда я редактирую пакет и roxegenise :) Я соглашусь, если нет лучших ответов. Мне все равно хотелось бы знать, почему это не работает с методом, предложенным в http://r-pkgs.had.co.nz/data.html. – MorganBall

+1

Не понимаю. Используйте формат '@ format' для документирования формата. Вот что я имею в виду с моим последним предложением. Я предположил, что вы пропустили это для минимального примера. – Roland

+0

С '@ format' вы должны написать свой формат, где, как указано выше,« # »Поиск продукта # ' #' @source internal " productlookup "' Будет документировать формат для вас. Возможно, причина, по которой она должна быть загружена в глобальную среду! Поэтому вполне может объяснить вторую часть моего вопроса. Еще раз спасибо. – MorganBall