Romain Francois is a 32-years old R developer and consultant. He defines himself a "Professional R Enthusiast" and r-enthusiasts.com is his website. He co-authored several R packages, such as dplyr and Rcpp.
Romain Francois writes a world famous blog about R and the R Graph Gallery, that showcases hundreds of examples of data visualization with R.
I am honored to announce that Romain Francois is the special guest of the next MilanoR Meeting.
In these days, I was talking about an R package I developed with a colleague. He used several times the word library to refer to the R package. So, I realized that many R users do not know that package and library are not synonymous when referring to R.
The "Writing R Extensions" manual is clear: "A package is not a library", although the same manual admits "this is a persistent mis-usage".
What is a package
An R package is a directory of files which extend R. Some authors say that R packages are a good way to distribute R code as well as papers are a good way to disseminate scientific researches. Rossi provides some good reasons to write an R package.
- We refer to the directory containing files as a source package, the master files of a package. These directory can be compressed in a tarball containing the files of a source package, the .tar.gz version of the source package.
- An installed package is the result of running
R CMD INSTALLor
install.packages()at the R console on a source package.
- On some platforms (notably OS X and Windows) there are also binary packages, a zip file or tarball containing the files of an installed package which can be unpacked rather than installing from sources.
Summarizing: we can refer to the source package as the human readable version of the package and to the installed package or to the binary package as the computer readable version.
What is a library
In R, a library can refer to:
- A directory into which packages are installed, e.g.
- A shared, dynamic or static library or (especially on Windows) a DLL, where the second L stands for ‘library’. Installed packages may contain compiled code in what is known on Unix-alikes as a shared object and on Windows as a DLL.
Origin of the mis-used
"Writing R extension" manual suggest that the mis-use seems to stem from S, whose analogues of R’s packages were officially known as library sections and later as chapters, but almost always referred to as libraries.
I add to this that the R function to load packages, i.e.
library(), doesn't help to understand. By the way, before loading a package we have to install it with install.packages(). Than we will load the package from the directory into which package is installed that is a library.
At the end of this post, what should a new user remember of all these?
Ramarro, a web book about advanced R programming written by Andrea Spanò, contains a useful summary.
Terms about R packages are often confused. This may help to clarify:
- Package: a collection of R functions, data, and compiled code in a well-defined format.
- Library: the directory where packages are installed.
- Repository: A website providing packages for installation.
- Source: The original version of a package with human-readable text and code.
- Binary: A compiled version of a package with computer-readable text and code, may work only on a specific platform.
MilanoR staff is happy to announce the next MilanoR meeting.
Thursday, December 18, 2014
from 6 to 8 pm
by Nicola Sturaro
Consultant at Quantide
Shine your Rdata: multi-source approach in media analysis for telco industry
by Giorgio Suighi (Head Of Analytics), Carlo Bonini (Data Scientist), Paolo Della Torre and Gianluca D’Innocenzo (ROI Managers), MEC
Think different your R data: dplyr
by Romain Francois, R Developer, co-author of dplyr
Fiori Oscuri Bistrot & Bar
Via Fiori Oscuri, 3 - Milano (Zona Brera)
MilanoR is a free event, open to all R users and enthusiasts or those who wish to learn more about R. Places are limited so, if you would like to attend to the MilanoR meeting, please register below. (If you're reading this post from a news feed, e.g. from R-bloggers, please visit the original post in the MilanoR website to see the form and subscribe the event)[contact-form-7]
MilanoR staff is happy to announce the next MilanoR meeting on December 18, 2014.
Please stay connected: further details will be published soon!
R machine learning essentials will be published soon. The target audience is readers wanting to quickly get familiar with machine learning. The only requirement is knowing a bit about data analysis and/or coding concepts.
This book is not just a tutorial. Its target is not teaching how to build very sophisticated machine learning solutions. It doesn't even provide the reader with a detailed description of many techniques. R machine learning essentials is a path full of hands-on examples that makes the reader familiar with the fundamental machine learning concepts. In addition, it teaches the reader how to use some simple and powerful R tools like the data.table package. In the end, the reader will be able to face new machine learning challenges finding, applying, and evaluating new techniques.
The path starts showing business challenges requiring data-driven solutions, in such a way that the reader gets involved understanding the potentiality of machine learning. Then, the book explains why R is a good choice to build quick and powerful solutions. After a brief R tutorial, the book shows a quick example of data analysis and machine learning. Then, using another example, the book goes through the essential machine learning steps illustrating them in a result-oriented way. Now that the reader masters the essential concepts, the book shows an overview of the most important machine learning algorithms. In the last chapter, the book shows a practical business challenge and a powerful machine learning solution.
Perhaps you know R but you are new to machine learning. Or perhaps you know some machine learning techniques, but have never used R. Or maybe you are already familiar with both R and machine learning, but want a deeper understanding of the fundamental principles. In all the cases, the book will get you up and running quickly.