2012-09-12 17 views
19

Estoy ansioso por aprender a incorporar ejemplos de datos como los comentarios escritos por encima de las funciones, tales como:incluir ejemplos de datos en el desarrollo de paquetes R

##' @examples 
##' ## Set working directory... 
##' ## Load data into R session: 
##' data <- system.file("extdata", "data.txt", package="...", sep="\t", header=TRUE, stringsAsFactors = FALSE) 
##' 
##' ## For reproducible results: 
##' set.seed(999) 

puedo poner mi archivo "datos.txt" en el directorio:/pkg_Name/inst/extdata /. Sin embargo, la comprobación R CMD indica error en este paso. Si procedo con R CMD build y R CMD install, luego de cargar el paquete, no puedo obtener los datos en la sesión R ... ¿Alguien podría decirme qué salió mal? ¿Es esta la forma correcta de incluir ejemplos de datos al final del documento de ayuda de funciones?

¡Muchas gracias!

Respuesta

12

Mire los paquetes CRAN que incluyen datos y copie su enfoque. Acabo de agregar datos a un paquete de solo trabajo hace unas semanas y simplemente funciona ...

Por lo que vale, el manual tiene una sección 1.1.5 Data in packages que lo explica.

+0

¡Gracias @Dirk por las sugerencias! – alittleboy

31

Hadley Wickham tiene un capítulo en su libro "R Packages" en how to incorporate data into an R Package.

Dirk apunta a la documentación oficial en data in packages.

Alternativamente, aquí hay un ejemplo de cómo aprender del paquete ggplot2 para una forma de cómo incorporar datos usando archivos rda y roxygen.

Here is the data directory in the ggplot2 package. En este ejemplo, cada archivo de datos se almacenan en un archivo separado rda (por ejemplo, generada a partir de save(foo, file='foo.rda')

enter image description here

Ver the file data.r para la Roxygen comandos para generar los archivos de ayuda RMD de los datos:. Por ejemplo,

#' Prices of 50,000 round cut diamonds 
#' 
#' A dataset containing the prices and other attributes of almost 54,000 
#' diamonds. The variables are as follows: 
#' 
#' @format A data frame with 53940 rows and 10 variables: 
#' \itemize{ 
#' \item price: price in US dollars (\$326--\$18,823) 
#' \item carat: weight of the diamond (0.2--5.01) 
#' \item cut: quality of the cut (Fair, Good, Very Good, Premium, Ideal) 
#' \item color: diamond colour, from J (worst) to D (best) 
#' \item clarity: a measurement of how clear the diamond is 
#'  (I1 (worst), SI1, SI2, VS1, VS2, VVS1, VVS2, IF (best)) 
#' \item x: length in mm (0--10.74) 
#' \item y: width in mm (0--58.9) 
#' \item z: depth in mm (0--31.8) 
#' \item depth: total depth percentage = z/mean(x, y) = 2 * z/(x + y) (43--79) 
#' \item table: width of top of diamond relative to widest point (43--95) 
#' } 
"diamonds" 
+8

Tenga en cuenta que [el libro de hadley sobre el desarrollo de paquetes] (http://r-pkgs.had.co.nz) ahora también contiene un capítulo sobre las diversas formas de agregar datos a un paquete: http: //r-pkgs.had .co.nz/data.html – jhin

+0

Las descripciones de los conjuntos de datos se han movido a ['data.R'] (https://github.com/hadley/ggplot2/blob/master/R/data.R). –

+0

@ RomanLuštrik Gracias. Le di una respuesta a la respuesta. –

Cuestiones relacionadas