The Voice of the R Community

Total Page:16

File Type:pdf, Size:1020Kb

The Voice of the R Community The Voice of the R Community David Smith @revodavid Director R Consortium R Consortium’s mission is to work with and provide support to key organizations and groups developing, maintaining, distributing and using R. The R Community Survey • Survey of R users Worldwide – 29 survey questions provided in English, Spanish and Chinese • Opened July 1, 2017; closed Aug 31, 2017 • 3618 Responses – 98% of respondents reported using R – 2% of respondents used R in the past, or planned to in future • Many verbatim (free-text responses) – Lots of interesting feedback! Where did the responses come from? 1616 respondents selected their location on an interactive map Demographics of respondents R usage by respondents • 83% use R as their primary data analysis tool • 88% use R for work – 37% use R in production • 37% have been using R for more than 5 years Where R users work Of respondents: 35% Academic 65% Industry What R interface do respondents use? 90% of respondents use R via RStudio (multiple selections allowed) What do people do with R? 37% of respondents have authored or contributed to an R package What other tools do respondents use? 66% also use Excel 44% also use Python (multiple selections allowed) What is “Big Data” for R users? 17% of respondents typically analyze 1M records or more Satisfaction with R 80% of respondents were “completely satisfied” or “very satisfied” by R overall What is the best aspect of working with R? Key themes: community and ecosystem the R language itself packages online resources What is the best aspect of working with R? Key themes: community and ecosystem the R language itself packages online resources What is the worst aspect of working with R? Key themes: steep learning curve performance & memory unfriendly docs / error messages issues with production use comparisons to Python What is the worst aspect of working with R? Key themes: steep learning curve performance & memory unfriendly docs / error messages issues with production use comparisons to Python Impacts from the survey data • R Localization – R translated into other languages • DBI Project – improve interface between R and databases • Infrastructure Development – R and package binaries • R in Medicine and R in Pharma working groups • R Community Diversity and Inclusion Working Group www.r-consortium.org/projects/awarded-projects R package developers embracing sustainability CII Best Practices Badge makes it easier for users of open source projects to see which projects take security seriously. Introduced in May 2016, over 1,000+ FOSS projects have registered for the badge. While only 10% of the projects successfully passed, every one of them made an improvement to achieve a badge. Learn more about the program and start the process with your package at https://bestpractices.coreinfrastructure.org/en R Packages that have or in progress of achieving CII Best Practices Badge ( as of 20180701 ) madrid.air R package to parse air quality data https://github.com/nramon/madri foghorn R package to summarize CRAN Check Results in https://github.com/fmichonneau/f published by http://datos.madrid.es/. d.air the Terminal oghorn An R Package for Quick ciTools is an R package that makes https://github.com/jthaman/ciToo osrm Shortest Paths and Travel Time from https://rgeomatic.hypotheses.org/ Uncertainty Intervals working with model uncertainty as easy ls OpenStreetMap with R category/osrm as possible. It gives the user easy access R_Matrix R package for Sparse and Dense Matrix Classes http://matrix.r-forge.r-project.org to confidence or prediction intervals... and Methods dodgr Distances on Directed Graphs in R https://ATFutures.github.io/dodgr A rich hierarchy of matrix classes, including netReg Network-penalized generalized linear https://dirmeier.github.io/netReg triangular, symmetric, and diagonal matrices,... models in R and C++. base64enc R tools for base64 encoding https://github.com/s-u/base64enc DBI A database interface (DBI) definition for http://dbi.r-dbi.org communication between R and RDBMSs ggplot2 An implementation of the Grammar of Graphics https://ggplot2.tidyverse.org datastructures Implementation of core data structures https://dirmeier.github.io/datastr in R for R. uctures covr Test coverage reports for R https://github.com/r-lib/covr Acknowledgements • Andrie de Vries • Mark Hornik, Augustina Ragwitz • John Mertic • R Consortium Members • You? – Looking for help to anonymize the survey data so we can release it for further analysis Thank you! David Smith @revodavid www.r-consortium.org.
Recommended publications
  • Revolution R Enterprise 6.1 README
    Revolution R Enterprise 6.1 README Revolution R Enterprise 6.1 for 32-bit and 64-bit Windows and 64-bit Red Hat Enterprise Linux (RHEL 5.x and RHEL 6.x) features an updated release of the RevoScaleR package that provides fast, scalable data management and data analysis: the same code scales from data frames to local, high-performance .xdf files to data distributed across a Windows HPC Server cluster, Windows HPC Server Azure Burst cluster, or IBM Platform Computing LSF cluster. RevoScaleR also allows distribution of the execution of essentially any R function across cores and nodes, delivering the results back to the user. Installation instructions and instructions for getting started are provided in your confirmation e-mail. What’s New in Revolution R Enterprise 6.1 Big Data Decision Tree Models New RevoScaleR function rxDTree can be used to create decision tree models. It is based on a binning algorithm so that it can scale to huge data. Both classification and regression trees are supported. The model objects returned can be made to inherit from the rpart class of the rpart package, so that plot.rpart, text.rpart, and printcp can be used for subsequent analysis. Prediction for models fitted by rxDTree can be done using rxPredict. See Chapter 10 of the RevoScaleR User’s Guide for examples on how to create decision tree models with rxDTree. Additional information is available in the rxDTree help file, seen by entering ?rxDTree at the R command line. Support for Compression in .xdf Files RevoScaleR’s .xdf files can now be created using zlib compression.
    [Show full text]
  • Installing R
    Installing R Russell Almond August 29, 2020 Objectives When you finish this lesson, you will be able to 1) Start and Stop R and R Studio 2) Download, install and run the tidyverse package. 3) Get help on R functions. What you need to Download R is a programming language for statistics. Generally, the way that you will work with R code is you will write scripts—small programs—that do the analysis you want to do. You will also need a development environment which will allow you to edit and run the scripts. I recommend RStudio, which is pretty easy to learn. In general, you will need three things for an analysis job: • R itself. R can be downloaded from https://cloud.r-project.org. If you use a package manager on your computer, R is likely available there. The most common package managers are homebrew on Mac OS, apt-get on Debian Linux, yum on Red hat Linux, or chocolatey on Windows. You may need to search for ‘cran’ to find the name of the right package. For Debian Linux, it is called r-base. • R Studio development environment. R Studio https://rstudio.com/products/rstudio/download/. The free version is fine for what we are doing. 1 There are other choices for development environments. I use Emacs and ESS, Emacs Speaks Statistics, but that is mostly because I’ve been using Emacs for 20 years. • A number of R packages for specific analyses. These can be downloaded from the Comprehensive R Archive Network, or CRAN. Go to https://cloud.r-project.org and click on the ‘Packages’ tab.
    [Show full text]
  • The Rockerverse: Packages and Applications for Containerisation
    PREPRINT 1 The Rockerverse: Packages and Applications for Containerisation with R by Daniel Nüst, Dirk Eddelbuettel, Dom Bennett, Robrecht Cannoodt, Dav Clark, Gergely Daróczi, Mark Edmondson, Colin Fay, Ellis Hughes, Lars Kjeldgaard, Sean Lopp, Ben Marwick, Heather Nolis, Jacqueline Nolis, Hong Ooi, Karthik Ram, Noam Ross, Lori Shepherd, Péter Sólymos, Tyson Lee Swetnam, Nitesh Turaga, Charlotte Van Petegem, Jason Williams, Craig Willis, Nan Xiao Abstract The Rocker Project provides widely used Docker images for R across different application scenarios. This article surveys downstream projects that build upon the Rocker Project images and presents the current state of R packages for managing Docker images and controlling containers. These use cases cover diverse topics such as package development, reproducible research, collaborative work, cloud-based data processing, and production deployment of services. The variety of applications demonstrates the power of the Rocker Project specifically and containerisation in general. Across the diverse ways to use containers, we identified common themes: reproducible environments, scalability and efficiency, and portability across clouds. We conclude that the current growth and diversification of use cases is likely to continue its positive impact, but see the need for consolidating the Rockerverse ecosystem of packages, developing common practices for applications, and exploring alternative containerisation software. Introduction The R community continues to grow. This can be seen in the number of new packages on CRAN, which is still on growing exponentially (Hornik et al., 2019), but also in the numbers of conferences, open educational resources, meetups, unconferences, and companies that are adopting R, as exemplified by the useR! conference series1, the global growth of the R and R-Ladies user groups2, or the foundation and impact of the R Consortium3.
    [Show full text]
  • Frequently Asked Questions About Rcpp
    Frequently Asked Questions about Rcpp Dirk Eddelbuettel Romain François Rcpp version 0.12.7 as of September 4, 2016 Abstract This document attempts to answer the most Frequently Asked Questions (FAQ) regarding the Rcpp (Eddelbuettel, François, Allaire, Ushey, Kou, Chambers, and Bates, 2016a; Eddelbuettel and François, 2011; Eddelbuettel, 2013) package. Contents 1 Getting started 2 1.1 How do I get started ?.....................................................2 1.2 What do I need ?........................................................2 1.3 What compiler can I use ?...................................................3 1.4 What other packages are useful ?..............................................3 1.5 What licenses can I choose for my code?..........................................3 2 Compiling and Linking 4 2.1 How do I use Rcpp in my package ?............................................4 2.2 How do I quickly prototype my code?............................................4 2.2.1 Using inline.......................................................4 2.2.2 Using Rcpp Attributes.................................................4 2.3 How do I convert my prototyped code to a package ?..................................5 2.4 How do I quickly prototype my code in a package?...................................5 2.5 But I want to compile my code with R CMD SHLIB !...................................5 2.6 But R CMD SHLIB still does not work !...........................................6 2.7 What about LinkingTo ?...................................................6
    [Show full text]
  • Installing R and Cran Binaries on Ubuntu
    INSTALLING R AND CRAN BINARIES ON UBUNTU COMPOUNDING MANY SMALL CHANGES FOR LARGER EFFECTS Dirk Eddelbuettel T4 Video Lightning Talk #006 and R4 Video #5 Jun 21, 2020 R PACKAGE INSTALLATION ON LINUX • In general installation on Linux is from source, which can present an additional hurdle for those less familiar with package building, and/or compilation and error messages, and/or more general (Linux) (sys-)admin skills • That said there have always been some binaries in some places; Debian has a few hundred in the distro itself; and there have been at least three distinct ‘cran2deb’ automation attempts • (Also of note is that Fedora recently added a user-contributed repo pre-builds of all 15k CRAN packages, which is laudable. I have no first- or second-hand experience with it) • I have written about this at length (see previous R4 posts and videos) but it bears repeating T4 + R4 Video 2/14 R PACKAGES INSTALLATION ON LINUX Three different ways • Barebones empty Ubuntu system, discussing the setup steps • Using r-ubuntu container with previous setup pre-installed • The new kid on the block: r-rspm container for RSPM T4 + R4 Video 3/14 CONTAINERS AND UBUNTU One Important Point • We show container use here because Docker allows us to “simulate” an empty machine so easily • But nothing we show here is limited to Docker • I.e. everything works the same on a corresponding Ubuntu system: your laptop, server or cloud instance • It is also transferable between Ubuntu releases (within limits: apparently still no RSPM for the now-current Ubuntu 20.04)
    [Show full text]
  • R Generation [1] 25
    IN DETAIL > y <- 25 > y R generation [1] 25 14 SIGNIFICANCE August 2018 The story of a statistical programming they shared an interest in what Ihaka calls “playing academic fun language that became a subcultural and games” with statistical computing languages. phenomenon. By Nick Thieme Each had questions about programming languages they wanted to answer. In particular, both Ihaka and Gentleman shared a common knowledge of the language called eyond the age of 5, very few people would profess “Scheme”, and both found the language useful in a variety to have a favourite letter. But if you have ever been of ways. Scheme, however, was unwieldy to type and lacked to a statistics or data science conference, you may desired functionality. Again, convenience brought good have seen more than a few grown adults wearing fortune. Each was familiar with another language, called “S”, Bbadges or stickers with the phrase “I love R!”. and S provided the kind of syntax they wanted. With no blend To these proud badge-wearers, R is much more than the of the two languages commercially available, Gentleman eighteenth letter of the modern English alphabet. The R suggested building something themselves. they love is a programming language that provides a robust Around that time, the University of Auckland needed environment for tabulating, analysing and visualising data, one a programming language to use in its undergraduate statistics powered by a community of millions of users collaborating courses as the school’s current tool had reached the end of its in ways large and small to make statistical computing more useful life.
    [Show full text]
  • Revolution R Enterprise™ 7.1 Getting Started Guide
    Revolution R Enterprise™ 7.1 Getting Started Guide The correct bibliographic citation for this manual is as follows: Revolution Analytics, Inc. 2014. Revolution R Enterprise 7.1 Getting Started Guide. Revolution Analytics, Inc., Mountain View, CA. Revolution R Enterprise 7.1 Getting Started Guide Copyright © 2014 Revolution Analytics, Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of Revolution Analytics. U.S. Government Restricted Rights Notice: Use, duplication, or disclosure of this software and related documentation by the Government is subject to restrictions as set forth in subdivision (c) (1) (ii) of The Rights in Technical Data and Computer Software clause at 52.227-7013. Revolution R, Revolution R Enterprise, RPE, RevoScaleR, RevoDeployR, RevoTreeView, and Revolution Analytics are trademarks of Revolution Analytics. Other product names mentioned herein are used for identification purposes only and may be trademarks of their respective owners. Revolution Analytics. 2570 W. El Camino Real Suite 222 Mountain View, CA 94040 USA. Revised on March 3, 2014 We want our documentation to be useful, and we want it to address your needs. If you have comments on this or any Revolution document, send e-mail to [email protected]. We’d love to hear from you. Contents Chapter 1. What Is Revolution R Enterprise? ....................................................................
    [Show full text]
  • Iotools: High-Performance I/O Tools for R by Taylor Arnold, Michael J
    CONTRIBUTED RESEARCH ARTICLE 6 iotools: High-Performance I/O Tools for R by Taylor Arnold, Michael J. Kane, and Simon Urbanek Abstract The iotools package provides a set of tools for input and output intensive data processing in R. The functions chunk.apply and read.chunk are supplied to allow for iteratively loading contiguous blocks of data into memory as raw vectors. These raw vectors can then be efficiently converted into matrices and data frames with the iotools functions mstrsplit and dstrsplit. These functions minimize copying of data and avoid the use of intermediate strings in order to drastically improve performance. Finally, we also provide read.csv.raw to allow users to read an entire dataset into memory with the same efficient parsing code. In this paper, we present these functions through a set of examples with an emphasis on the flexibility provided by chunk-wise operations. We provide benchmarks comparing the speed of read.csv.raw to data loading functions provided in base R and other contributed packages. Introduction When processing large datasets, specifically those too large to fit into memory, the performance bottleneck is often getting data from the hard-drive into the format required by the programming environment. The associated latency comes from a combination of two sources. First, there is hardware latency from moving data from the hard-drive to RAM. This is especially the case with “spinning” disk drives, which can have throughput speeds several orders of magnitude less than those of RAM. Hardware approaches for addressing latency have been an active area of research and development since hard-drives have existed.
    [Show full text]
  • Integrating R with Azure for High-Throughput Analysis Hugh Analysis Shanahan
    Integrating R with Azure for High- throughput Integrating R with Azure for High-throughput analysis Hugh analysis Shanahan Hugh Shanahan Department of Computer Science Royal Holloway, University of London [email protected] @HughShanahan Hugh Shanahan Integrating R with Azure for High-throughput analysis Applicability to other domains Integrating R with Azure for High- throughput analysis This project started out doing something very specific Hugh for the domain I work in (Computational Biology). Shanahan I promise that there will be no Biology in this talk !! Realised can be extended to running high-throughput jobs in R. Contrast with MapReduce / R formalisms (HadoopStreaming, Rhipe, Revolution Analytics, ... ) - parallelisation happens outside of individual R script. Hugh Shanahan Integrating R with Azure for High-throughput analysis Applicability to other domains Integrating R with Azure for High- throughput analysis This project started out doing something very specific Hugh for the domain I work in (Computational Biology). Shanahan I promise that there will be no Biology in this talk !! Realised can be extended to running high-throughput jobs in R. Contrast with MapReduce / R formalisms (HadoopStreaming, Rhipe, Revolution Analytics, ... ) - parallelisation happens outside of individual R script. Hugh Shanahan Integrating R with Azure for High-throughput analysis Applicability to other domains Integrating R with Azure for High- throughput analysis This project started out doing something very specific Hugh for the domain I work in (Computational Biology). Shanahan I promise that there will be no Biology in this talk !! Realised can be extended to running high-throughput jobs in R. Contrast with MapReduce / R formalisms (HadoopStreaming, Rhipe, Revolution Analytics, ..
    [Show full text]
  • BIG DATA 50 the Hottest Big Data Startups of 2014
    BIG DATA 50 The hottest big data startups of 2014 Jeff Vance Table of Contents Big Data Startup Landscape – Overview .................................................................................. i About the Author ................................................................................................................. iii Introduction – the Big Data Boom .......................................................................................... 1 Notes on Methodology & the origin of the Big Data 50 ............................................................. 2 The Big Data 50 ..................................................................................................................... 5 Poised for Explosive Growth ....................................................................................................... 5 Entrigna ................................................................................................................................... 5 Nuevora ................................................................................................................................... 7 Roambi .................................................................................................................................... 9 Machine Learning Mavens ........................................................................................................ 10 Oxdata ................................................................................................................................... 10 Ayasdi ...................................................................................................................................
    [Show full text]
  • Working with R Steph Locke (Locke Data)
    Working with R Steph Locke (Locke Data) Contents Preamble 7 About this book ....................... 7 What you need to already know ............... 7 Steph Locke .......................... 8 Locke Data .......................... 8 Acknowledgements ...................... 9 Conventions .......................... 9 Feedback ........................... 10 I R at a high level 13 1 About R 15 1.1 History ......................... 15 1.2 CRAN .......................... 16 1.3 Key points to know about R .............. 16 1.4 Summary ........................ 17 2 Why use R? 19 2.1 Data wrangling ..................... 19 2.2 Data science ....................... 20 2.3 Data visualisation ................... 22 2.4 Summary ........................ 25 3 Using RStudio 27 3.1 The console ....................... 27 3.2 Scripts .......................... 29 3.3 Code completion .................... 30 3.4 Projects ......................... 30 3.5 Summary ........................ 32 3 4 CONTENTS 4 Useful resources 33 4.1 The built-in help .................... 33 4.2 Online .......................... 35 4.3 Books .......................... 36 4.4 In-person ........................ 38 4.5 Summary ........................ 38 II R building blocks 39 5 R data types 41 5.1 Numbers ......................... 42 5.2 Text ........................... 44 5.3 Logical values ...................... 47 5.4 Dates .......................... 48 5.5 Missings ......................... 50 5.6 Summary ........................ 51 5.7 R Data Types Exercises ................ 52 6
    [Show full text]
  • REVOLUTION ANALYTICS = ACTUARIAL EYE (Part 1)
    REVOLUTION ANALYTICS = ACTUARIAL EYE (Part 1) “Perhaps the most important cultural trend today: The explosion of data about every aspect of our world and the rise of applied math gurus who know how to use it.” – Chris Anderson, editor-in-chief of Wired. “There is a real appetite in the business to understand more and to think about how we assemble and use data, also making sure we have the right people to ask the right questions of the data – because one without the other is not helpful.” - Wendy Thorpe, AMP Why Analytics? Organizations are built on great decisions and great decisions are built on great predictions. So what are great predictions built on? The answer is ANALYTICS!!! So in case you are wondering what this could possibly mean for you as a prospective actuary, the answer depends on what kind of actuary you want to be. Let me quote Duncan West here: If you are in a leadership role in your organization, get data onto the strategic agenda. Many companies talk about the importance of data but talk is not cheap. Do they manage themselves in ways that demonstrates the importance? Actuaries in any role need to go away from a regulatory and compliance mindset that accuracy is the most important way to measure success. They should measure success by helping the business to make good decisions. And actuaries at all levels need to help develop the skills necessary to show insights to the business. Insights are useless if the business can’t understand them. So communicating insight is a key part of an actuarial role.
    [Show full text]