Citing R and R Packages in Publications
How to cite R and R packages in publications.
citation(package = "base", lib.loc = NULL, auto = NULL) readCitationFile(file, meta = NULL)
- a character string with the name of a single package. An error occurs if more than one package name is given.
- a character vector with path names of R libraries, or
NULL. The default value of
NULLcorresponds to all libraries currently known. If the default is used, the loaded packages are searched before the libraries.
- a logical indicating whether the default citation
auto-generated from the package DESCRIPTION metadata should
be used or not, or
NULL(default), indicating that a CITATION file is used if it exists, or an object of class
"packageDescription"with package metadata (see below).
- a file name.
- a list of package metadata as obtained by
The R core development team and the very active community of package authors have invested a lot of time and effort in creating R as it is today. Please give credit where credit is due and cite R and R packages when you use them for data analysis.
citation() for information on how to cite the
base R system in publications. If the name of a non-base package is
given, the function either returns the information contained in the
CITATION file of the package or auto-generates citation
information. In the latter case the package DESCRIPTION file
is parsed, the resulting citation object may be arbitrarily bad, but
is quite useful (at least as a starting point) in most cases.
In R >= 2.14.0, one can use a Authors@R field in
DESCRIPTION to provide (R code giving) a
person object with a refined, machine-readable
description of the package authors (in particular specifying
their precise roles). Only those with an author role will be
included in the auto-generated citation.
If only one reference is given, the print method for the object
citation() shows both a text version and a BibTeX
entry for it, if a package has more than one reference then only the
text versions are shown. The BibTeX versions can be obtained using
toBibtex() (see the examples below).
The CITATION file of an R package should be placed in the
inst subdirectory of the package source. The file is an R
source file and may contain arbitrary R commands including
conditionals and computations. Function
citation() to extract the information in
CITATION files. The file is
source()ed by the R
parser in a temporary environment and all resulting bibliographic
objects (specifically, of class
Traditionally, the CITATION file contained zero or more calls
citHeader, then one or more calls to
and finally zero or more calls to
citFooter, where in fact
citFooter are simply wrappers to
paste, with their
... argument passed on to
paste as is. The
makes for improved representation and manipulation of bibliographic
information (in fact, the old mechanism is implemented using the new
one), and one can write CITATION files using the unified
One can include an auto-generated package citation in the
CITATION file via
citation(auto = meta).
readCitationFile makes use of the
Encoding element (if
meta to determine the encoding of the file.
An object inheriting from class
## the basic R reference citation() ## references for a package -- might not have these installed if(nchar(system.file(package = "lattice"))) citation("lattice") if(nchar(system.file(package = "foreign"))) citation("foreign") ## extract the bibtex entry from the return value x <- citation() toBibtex(x)