MEB Advanced R group
Table of Contents
- Meetings & presentations
- TODO Reading: Advanced R - Non-standard evaluation All Alex
- DONE Reading: Advanced R - Functionals and Non-standard evaluation All Alex
- DONE Reading: Advanced R - Functional programming All Mark Peter
- DONE Reading: Advanced R - Debugging, condition handling, and defensive programming All Johan
- DONE Reading: Advanced R - Environments All Alex
- DONE Reading: Advanced R - OO field guide All
- DONE Reading: Advanced R - vocabulary, style and functions All Andreas
- DONE Reading: Advanced R - subsetting All
- DONE Reading: Advanced R - data structures All
- DONE R environments Johan
- DONE Robust variance Arvid
- DONE Meetings
- Purpose of the meetings
- Potential topics pool
- Read & discuss
- Other activities
Meetings & presentations
TODO Reading: Advanced R - Non-standard evaluation All Alex
- Read & do the exercises for the Non-standard evaluation chapters before the meeting.
- The material is available here:
- Non-standard evaluation
- http://adv-r.had.co.nz/Computing-on-the-language.html
- At the helm: Alex
- Location: Wargentin
DONE Reading: Advanced R - Functionals and Non-standard evaluation All Alex
- Post-meeting note: The Non-standard evaluation chapter will continue the next session.
- Read & do the exercises for the Functionals and Non-standard evaluation chapters before the meeting. There will be an emphasis on the first chapter during our meeting.
- The material is available here:
- Functionals
- http://adv-r.had.co.nz/Functionals.html
- Non-standard evaluation
- http://adv-r.had.co.nz/Computing-on-the-language.html
- At the helm: Alex
- Location: Wargentin
DONE Reading: Advanced R - Functional programming All Mark Peter
- Read & do the exercises for the 1st and 3rd Functional programming chapters before the meeting.
- The material is available here:
- At the helm: Peter & Mark
- Location: Wargentin
DONE Reading: Advanced R - Debugging, condition handling, and defensive programming All Johan
- Read & do the exercises in the Exceptions and debugging chapter before the meeting.
- The material is available here:
- At the helm: Johan
- Location: Wargentin
DONE Reading: Advanced R - Environments All Alex
- Read & do the exercises in the Environments chapter before the meeting.
- The material is available here:
- We will draw parallels between the Environments chapter and the reference classes from the OO chapter.
- Suggested solutions to the Environment chapter are available here: Notes on Environments
- At the helm: Alex
- Location: Wargentin
DONE Reading: Advanced R - OO field guide All
- Read & do the exercises in the OO field guide chapter before the meeting.
- The material is available here:
- Also, Alex will briefly go through something that came up during the previous meeting.
- Location: Wargentin
DONE Reading: Advanced R - vocabulary, style and functions All Andreas
- Read & do the exercises in the vocabulary, style and functions chapters before the meeting.
- The material is available here:
- The major focus will be the functions chapter. The first two chapters are short and will only be discussed if there are specific questions (the style chapter might be better suited over a friendly cup of coffee).
- Suggested solutions to the functions chapter are available here: Notes on functions
- At the helm: Andreas
- Location: Wargentin
DONE Reading: Advanced R - subsetting All
- Reading group on: http://adv-r.had.co.nz/Subsetting.html
- Read & do exercises of subsetting chapter before meeting
- Location: N2
DONE Reading: Advanced R - data structures All
- Reading group on: http://adv-r.had.co.nz/Introduction.html by Hadley Wickham
- Read & do exercises of
foundationsdata structures chapter before meeting - Location: N2
DONE R environments Johan
- Presenter: Johan
- Location: Wargentin
- Recommended reading before meeting: http://adv-r.had.co.nz/Environments.html
- Materials: slides, R-code
DONE Robust variance Arvid
DONE Meetings
Attendees
Xingrong, Elisabeth, Andreas, Nathalie, Henric, Arvid, Peter, Mark and Alex
Decisions
- The meeting will take place every three weeks.
- The meeting format will be casual with one person presenting (inspired by the applied biostat group).
- There were also discussions regarding a reading group with particular interest in the Advanced R book http://adv-r.had.co.nz/.
Purpose of the meetings
There is a lot of knowledge and advanced usage of R within MEB. It would be nice to be able to share some of that knowledge. Preferably this could be done without creating too much extra work.
Potential topics pool
The assigned names here are only preliminary.
Making R-packages
Documentation
- Roxygen
- Rmarkdown
Testing
- testthat
- assertthat
- r-travis
Debugging Henric
- traceback
- debug
- browser
- trace
- recover
Rcpp
- Valgrind
Profiling Henric
- Rprof
- lineprof
- microbenchmark
Permutation test Henric
- coin package
Data analysis Alex
- Hmisc, multcomp, car
- non-linear contrasts, car??
Work flow Alex
- literate programming
Splines Xingrong
- Xingrong
Extending R
Rcpp Mark
- Rcpp
- Armadillo
JS Andreas Tobba
rCharts, plotly, ggvis & htmlwidgets
Speeding up R
Multi-core Henric
- parallel, foreach, snow
- openmp?
Multi-node
- Rmpi, RHadoop
Compiled R code Henric
Compiling R code using LLVM by Duncan Temple Lang: http://projecteuclid.org/download/pdfview_1/euclid.ss/1408368570
Plotting
ggplot2 Robert
More advanced version of Roberts student seminar
Data Management Andreas
- dplyr, data.table, sqldf and base
- DB queries from R
General coding schemes
The distinction between functional OOP, as in S3 and S4, and Java/C++-style encapsulated OOP, as in Reference Classes and R6. Here’s a link to nice paper by John Chambers http://projecteuclid.org/download/pdfview_1/euclid.ss/1408368569 discussing these issues. For more on this, the paper has now grown into a book that’ll be published later this year: https://www.crcpress.com/Extending-R/Chambers/9781498775717
R classes and object oriented coding in R Alex Henric
- Classes inheritance
- S3, Alex http://www.cyclismo.org/tutorial/R/s3Classes.html
- S4, Henric
- Operators?
Functional coding in R Mark
- Functional-packages
- Closures
- Currying
- Tail recursion
- Lambda-functions
- Macros
- http://www.r-bloggers.com/macros-in-r/
- Programmer’s Niche: Macros in R: https://www.r-project.org/doc/Rnews/Rnews_2001-3.pdf
- Monads and Gonads?
- Functors?
Hosting R processes Andreas
- shiny
- opencpu
Server misc
- rocker
- Rstudio-server
Simulation
- for evaluating sampling techniques
- comparing estimates from various methods
- https://www.jstatsoft.org/article/view/v069i04
Bootstrapping
Reporting simulation results
- Graph and table designs
Predictive modelling Peter
- Applied Predictive Modeling book: http://appliedpredictivemodeling.com/
Machine Learning
- Caret package: https://topepo.github.io/caret/index.html
- Interview with Max Kuhn: http://machinelearningmastery.com/caret-r-package-for-applied-predictive-modeling/
Pitfalls
- http://stackoverflow.com/questions/3418128/how-to-convert-a-factor-to-an-integer-numeric-without-a-loss-of-information
- Use: stopifnot(identical(impl1, impl2))
Misc
- GAMS
- Imputation
- R and version control
Read & discuss
- Advanced R: http://adv-r.had.co.nz/
- R for Data Science: http://r4ds.had.co.nz/
- R cookbook
- Applied Predictive Modeling by Max Kuhn and Kjell Johnson
Other activities
- Introduce R to new users within MEB
- Offer courses in R
- Host Stockholm R useR (SRUG) group meetup at MEB
- Reuse some study-group material for SRUG presentation