The top 10 critical packages on CRAN

August 8, 2012

(This article was first published on Revolutions, and kindly contributed to R-bloggers)

While most R packages on CRAN are designed to be used by an R user directly, a few packages are designed to be used by other package developers. (And some packages are so useful that they're regularly used by both camps.) When a package author publishes a package to CRAN, she must list those packages that provide functions her package uses (this is the Depends: field in the DESCRIPTION file). The number of times a package is listed as a dependency is a measure of how often it's relied upon by package authors.

Dirk Eddelbuettel recently analyzed the packages on CRAN according to the number of times they were listed as a dependency by other packages, and the top 10 packages were:

  1. mvtnorm: Multivariate Normal and t Distributions 
  2. coda: Output analysis and diagnostics for MCMC
  3. Rcpp: Seamless R and C++ Integration
  4. sp: Classes and methods for spatial data
  5. rgl: 3D visualization device system (OpenGL)
  6. ggplot2: An implementation of the Grammar of Graphics
  7. XML: Tools for parsing and generating XML within R and S-Plus
  8. rJava: Low-level R to Java interface
  9. Hmisc: Harrell Miscellaneous
  10. zoo: S3 Infrastructure for Regular and Irregular Time Series (Z's ordered observations)

These are the top 10 "critical packages" on CRAN, in the sense that if they disappeared from CRAN or stopped working, they'd make many other packages that depend on them break as well. I didn't include in this list any of the "recommended" R packages, because they're included in R's standard distribution and generally considered to be "part of R. Nonetheless, the packages MASS, lattice, survival, Matrix, nlme and boot all appear in the top 10 of the most frequently-cited package dependencies in Dirk's chart below, so it makes sense that they're made available to all R users.

Thinking outside the box: Counting CRAN Package Depends, Imports and LinkingTo 

To leave a comment for the author, please follow the link and comment on their blog: Revolutions. offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Tags: ,

Comments are closed.

Search R-bloggers


Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)