How do I become an expert in R?

To master R programming, you need to master:

General R programming concepts

  • Environments and scoping
  • Non-standard evaluation (quote, substitute, eval)
  • Functionals, specifically lapply family of functions
  • Closures and associated use cases
  • Higher order functions like Map and Reduce
  • R’s object oriented systems (S3, S4)
  • Processing strings and regex
  • Date and timestamp manipulation
  • Understanding the merits of different data structures
  • All commonly used base functions
  • Hadley’s packages, namely ggplot2, dplyr, and reshape2

Making R code fast and efficient

  • Profiling performance
  • Memory management; making copies vs modifying in place
  • data.table package
  • rcpp package and rewriting slow code in C++
  • When to vectorize, when to use for loops
  • parallelization

Making your R code maintainable and readable

  • Style conventions
  • Unit testing
  • Automated testing
  • Package creation
  • Documentation
  • Project workflow
  • Top down design and abstraction

Playing nice with other technologies

  • Interfacing with other languages
  • HTTP and working with APIs
  • Connecting to external databases
  • Scheduling R scripts with bash

This is taken out of an answer provided on Quora.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s