devtools: Tools to make developing R code easier
They do and it is better for you to read about them before you need them.
ADDENDUM: 2014-09-06T09:08:01
devtools
: Tools to make developing R code easier
Collection of package development tools
That is a bit too terse. Intro to the README follows
The aim of devtools is to make your life as a package developer easier by providing R functions that simplify many common tasks. R packages are actually really simple, and with the right tools it should be easier to use the package structure than not. Package development in R can feel intimidating, but devtools does every thing it can to make it as welcoming as possible. devtools comes with a small guarantee: if because of a bug in devtools a member of R-core gets angry with you, I will send you a handwritten apology note. Just forward me the email and your address, and I’ll get a card in the mail.
Excellent.
Readme. Manual. Github.
At the very least, just know of this package, as you will be installing it if
you want to us tidyr
.
install.packages("devtools")
devtools::install_github("devtools")
You may save a bit of time by only source
‘ing your files in R when
they have changes with R.utils::sourceTo(file, modifiedOnly=TRUE)
.
Via r-help via R.utils.
plyr is a set of tools for a common set of problems: you need to split up a big data structure into homogeneous pieces, apply a function to each piece and then combine all the results back together.
dplyr is the next iteration of plyr, focussed on tools for working with data frames (hence the d in the name). It has three main goals:
- Identify the most important data manipulation tools needed for data analysis
and make them easy to use from R.
- Provide blazing fast performance for in-memory data by writing key pieces in
C++.
- Use the same interface to work with data no matter where it’s stored, whether
in a data frame, a data table or database.
These two are a couple of the other mainstream manipulation tools outside of
base R.
data.table
is a nice option for retaining the familiarity of a dataframe while
opening the door for pass-by-reference semantics and a more SQL-like query
language. The literature is really wonderful too providing all levels of detail
ranging from the 10-minute introduction to the entirety of the API itself.
The 10-minute introduction is really revealing of things that you would probably
enjoy in your personal analytical workflow whether you obtain them with
data.table
or elsewhere. The short introduction is also revealing that whatever
solution you choose requires sincere and focused mastery in order to truly
utilize its power without making major, major mistakes.
Resources:
crantastic, a community site for R packages where you can search for, review and tag CRAN packages.
The keyword there is review. That is very helpful to get a sense of what packages are valued by the community because they may also be valuable to you.