Pytanie Jak mogę udokumentować zestawy danych za pomocą tlenu?


Czy można włączyć pliki .R do katalogu danych mojego pakietu w procesie roxygen?

Umieściłem kilka plików .R w katalogu danych. Kiedy są one pozyskiwane z danych (), czytają w surowych plikach danych i wykonują pewne transformacje.


44
2018-02-22 11:03


pochodzenie




Odpowiedzi:


Roxygen może być używany w dowolnym miejscu pliku R (innymi słowy, nie musi następować po nim funkcja). Może być również używany do dokumentowania dowolnego docType w dokumentacji R.

Więc możesz po prostu udokumentować swoje dane w oddzielnym bloku (coś takiego):

#' This is data to be included in my package
#'
#' @name data-name
#' @docType data
#' @author My Name \email{blahblah@@roxygen.org}
#' @references \url{data_blah.com}
#' @keywords data
NULL

37
2018-02-22 14:35



Poza tym, że lepiej ci się przysłuży NULL zamiast roxygen() aby nie wywoływać zależności w czasie wykonywania roxygen - hadley
@Hadley: fajnie byłoby dodać taki przykład do winiety tlenowej i zwrócić uwagę na zależność od tlenu? Zauważyłem, że jest trochę mylące pod względem struktury plików. - Shane
Dziękuję zarówno Shane'owi, jak i Hadleyowi za doskonałą pomoc. Widzę teraz o wiele jaśniej, jak używać tlenu; a teraz kontrola R CMD już nie narzeka. Pozostaje jedno pytanie: czy muszę umieścić dokumentację danych w podkatalogu R? Byłoby miło uczyć roxygenize również w katalogu danych ... - Karsten W.
@Karsten: Myślę, że jedyną rzeczą, która powinna znaleźć się w podkatalogu danych, są dane. Roxygen zapewnia pisanie programów jako kod R, więc lubię mieć to wszystko w moich plikach R. Ale poza tym możesz spróbować: roxygenize używa zmiennej środowiskowej "R.DIR". Ustaw zamiast tego na "dane" i powinno przetwarzać pliki R w katalogu danych. @Hadley: możesz stworzyć prostą łatkę, aby umożliwić wektor R.DIR? - Shane
@Shane: Już narzekam na to dla twórców roxygena i powinien się zmienić w następnym wydaniu - hadley


Od wersji roxygen2> 4.0.0 można udokumentować zdefiniowany obiekt danych gdzie indziej, dokumentując nazwę obiektu zdefiniowanego jako ciąg znaków:

#' This is data to be included in my package
#'
#' @author My Name \email{blahblah@@roxygen.org}
#' @references \url{data_blah.com}
"data-name"

28
2018-03-23 22:59





Uważam, że warto zapoznać się z przykładami w pakiecie ggplot2.

Widzieć ggplot2.r na github

Kilka rzeczy wartych uwagi:

  • Cały kod Roxygen dla zestawów danych może być zawarty w jednym .r plik w R katalog pakietu.

Zobacz przykłady, diamonds zestaw danych:

#' 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:
#'
#' \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 colour. 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)
#' }
#'
#' @docType data
#' @keywords datasets
#' @name diamonds
#' @usage data(diamonds)
#' @format A data frame with 53940 rows and 10 variables
NULL

W wyniku tego powstanie plik pomocy, który wygląda następująco:

roxygen documentation example


17
2017-08-20 07:28