Gentleman's set of packages R for automation of business tasks
Continuation of previous publications “DataScience Tools as an Alternative to Classical Integration of IT Systems” and
“Ecosystem R as a Tool for Automating Business Tasks” .
This article is an answer to the questions about R packages that are useful for implementing the described approaches. I consider it solely as reference information, and the starting point for the subsequent detailed study by those who are interested, since each package hides a huge space with its own philosophy and ideology, mathematics and development paths.
As a rule, all packages (9109 pieces as of September 7, 2016) are in the CRAN repository . Those that, for one reason or another, have not yet been published to the repository, can be found on GitHub. So, a short list:
Hadley Wickham Packages ( Hadleyverse )
Details on packages can be found on the GitHub repository.
dplyr
- extensions of grammatical constructions for data manipulation. As an introductory article, I would recommend "dplyr and pipes: the basics" , despite the fact that it was published in 2014ggplot2
- extensions of grammatical constructions for visualization. You can get an idea of the possibilities in the book "Cookbook for R", chapter "Graphs"scales
- ggplot2 extension for scaling chart axesggmap
- ggplot2 extension for working with cartographylubridate
- The "magic" of working with dates and times. The ideology is described in the article "Dates and Times Made Easy with lubridate"readr
- improved text data import to Rforcats
- improved work with categorical variablestibble
- modern rethinking of the standard data.frame data structurereadxl
- import excel data into Rpurrr
- extensions of grammatical constructions for functional programmingtidyr
- Improved work with "dirty" source data. The ideology is described in the article "Tidy Data"reshape2
- Improved data transformation. The ideology is described in the article "Reshaping Data with the reshape Package"stringr
- improved work with text stringscurl
- improved approach for working with data over HTTPhttr
- a simplified approach to working with data protocol httpxml2
- improved XML support
Programming and Data Elements
futile.logger
- developed logging systemiterators
- iterator supportforeach
- improved support for cyclic designsmagrittr
- grammar of work with data routing (pipe)jsonlite
- simplified JSON supportsp
- support for working with geodatadata.table
- extension of the standard data.frame data model for working with big databroom
- data conversion stat. functions in the tidy data format (see above). For details, see broom: An R Package for Converting Statistical Analysis Objects Into Tidy Data Framesknitr
- Preparation of documents of various formats (static and interactive, more detailed here ) from a single format R Markdown . In general, this is generally a separate world.
Shiny and web forms
shiny
- the framework itselfshinythemes
- additional themes (shiny built on bootstrap)highcharter
- wrapper for highchartsgoogleVis
- Connector to Google Charts charts. More here and hereshinydashboard
- sets of functions for building dashboards (a little outdated)flexdashboard
- A modern approach to the construction of dashboards. Details can be found hereshinyjs
- optional JS interactivehtmlwidgets
- support for html widgets, gallery hereplotly
- interface to the interactive visualization system Plot.ly. Details can be found hereleaflet
- wrapper for interactive cards JS leaflet. Details can be found hereDT
- wrapper for interactive tables JS DataTable. Details can be found hererbokeh
- R interface to the Bokeh visualization library. Details can be found here
Colors and Themes
RColorBrewer
- a package for flexible work with colorsviridis
- Virdis color palette. Details herewesanderson
- another paletteggthemes
- themes for ggplot2. Details here
In my work, I still use 2-3 dozens of other packages, but they have a narrower specificity, or simply provide connections to external sources (ODBC, No-SQL, git, dropbox, etc.)
Previous post: “R ecosystem as a tool for automating business tasks”
Next post: “Using R to work with the statement“ Who is to blame? Of course, IT! ””