1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
\name{Depends}
\alias{Depends}
\docType{data}
\title{
Dependencies of R Packages
}
\description{
This one-way table gives the type-token distribution of the number of
dependencies declared in 4983 packages listed on CRAN on January 17, 2014.
}
\usage{data(Depends)}
\format{
The format is:
'table' int [1:15(1d)] 986 1347 993 685 375 298 155 65 32 19 ...
- attr(*, "dimnames")=List of 1
..$ Depends: chr [1:15] "0" "1" "2" "3" ...
}
%\details{
%%% ~~ If necessary, more details than the __description__ above ~~
%}
\source{
Using code from
\url{http://blog.revolutionanalytics.com/2013/12/a-look-at-the-distribution-of-r-package-dependencies.html}
}
%\references{
%%% ~~ possibly secondary sources and usages ~~
%}
\examples{
data(Depends)
plot(Depends, xlab="Number of Dependencies", ylab="Number of R Packages", lwd=8)
\dontrun{
# The code below, from Joseph Rickert, downloads and tabulates the data
p <- as.data.frame(available.packages(),stringsAsFactors=FALSE)
names(p)
pkgs <- data.frame(p[,c(1,4)]) # Pick out Package names and Depends
row.names(pkgs) <- NULL # Get rid of row names
pkgs <- pkgs[complete.cases(pkgs[,2]),] # Remove NAs
pkgs$Depends2 <-strsplit(pkgs$Depends,",") # split list of Depends
pkgs$numDepends <- as.numeric(lapply(pkgs$Depends2,length)) # Count number of dependencies in list
zeros <- c(rep(0,dim(p)[1] - dim(pkgs)[1])) # Account for packages with no dependencies
Deps <- as.vector(c(zeros,pkgs$numDepends)) # Set up to tablate
Depends <- table(Deps)
}
}
\keyword{datasets}
|