For many studies increasingly the application of advanced quantitative methods including simulations are required. Standard software for these specialised applications is not available and researchers are often faced with the task to develop their own computer code. This task is not easy for non-specialists, particularly if several programming languages have to be used at the same time.
The participants will be introduced to the essential concepts and techniques in programming necessary to directly engage in its scientific use.
- Why is programming necessary for research work?
- R refresher (basic knowledge is assumed)
- Introduction to C++
- Programming concepts (object-oriented, structured, re-usability of code, user interfaces)
- Combining R and C++
- R extensions, e.g. for reporting, NetLogo, Shiny
- Introduction to simulations
- Publications versus software, what is more important?
- Version control, packaging, visualisation
- Automated scientific reporting for reproducible research
Pre-course preparation including brief description of PhD work.
- 12 June:
- Course introduction
- Presentation of the participants
- R installation and IDE RStudio, R refresher
- 13 June:
- Implicit and explicit loops in R
- Scripting simple simulations
- Effective data management and Visualisation in R
- 14 June:
- Concept of higher programming languages using C++ as an example
- Data structures in C++, I/O
- Syntax of C++
- Object-oriented programming
- Coding simple research applications
- 15 June:
- Combining R and C++ using Rcpp
- Writing simple and more advanced research applications using R and C++ in combination
- 16 June:
- Combining R and NetLogo/Shiny
- R packaging, version control, batch mode
The participants are expected to revise their R skills and to prepare a short presentation about themselves and their work to be delivered during the course.
By the end of the course it is intended that the participants:
- Understand the difference in data types
- Are able to program basic and more advanced simulation experiments in R
- Are able to use C++ for programming basic research software
- Can combine R and C++, R and NetLogo, R and Shiny for implementing their own quantitative research projects
- Have a better understanding of code and data management
- Independently carry out successful quantitative research
- Awareness of the computing, data and code management side of research
- Ability to design and carry out computer experiments
Presentations and progress in the computer practicals are assessed during the course.
The idea of the course is to take scientific computing to a higher level. Towards this end the course will enhance the knowledge of R programming and introduce a higher programming language, which will be new to most participants. In the next step both languages will be combined to reach an even higher level. In addition to this, we will introduce other software combinations and also discuss effective code and data management.
- 20 hours computer practicals
- 20 hours lecture
- 50 hours independent work
Basic knowledge of R, basic computer skills
Admission for NOVA courses is handled by the course organiser/ the NOVA member institution organising the course. Please see the links in the margin for more information.