R Foundations for Life Scientists



23 - 27 October 2023

The course is addressed to life scientists with little or moderate experience in programming but who are enthusiastic about learning how to use R to make their work smoother and easier.

The course covers fundamental concepts of programming and software design focusing on programming in R. We will go through various aspects of R scripting emphasizing the parts useful for life scientists. After introductory lectures on good programming practices, basic software design theory and a brief overview of R, we will delve into programming. We start by learning how to use R as a simple calculator, what are variable types, how to use data structures, how to implement repeating actions with and without loops, and how to take actions based on certain conditions. We gradually proceed to loading data, importing data from common file formats, some basic matrix algebra and learning how to perform basic statistical tests and visualize results.

 We will give you tools to access help and information on R-related challenges and issues, spend some time learning how to install external packages, how to find bugs and address common installation issues.

 We also mention some more advanced topics and tell you more about BioConductor, which is an invaluable tool for a computational biologist. You will learn how to document your work and how to generate automatic reports. We try to illustrate all these concepts with some real-life examples and interesting lab tasks.

 The course will be given by experienced computational biologists from SciLifeLab and Uppsala University. Marcin Kierczak, Sebastian DiLorenzo, Nima Rafati, and Prasoon Agarwal are responsible for the content of the course.

Audience National workshop open for PhD students, postdocs, researchers and other employees within Swedish academia. This course is run by the National Bioinformatics Infrastructure Sweden (NBIS).

Fee 2000 SEK (for academic participants, please contact us for more information on the non-academic fee). Please note that NBIS cannot invoice individuals. The fee covers lunches, coffee and a course dinner. Those who accept the spot and then do not attend without prior notification will also be invoiced. 

Note that travel and accommodation is not included in the fee and must be arranged by the participants. 



Covered topics

  • Variables and Operators
  • Matrices, lists, and dataframes
  • Data manipulation
  • Visualization
  • R packages
  • Bioconductor


The final day for application has passed, no more applications will be accepted. Next instances of this course will be announced on the NBIS http://nbis.se/training/events.html and SciLifeLab https://www.scilifelab.se/education/courses/ websites.

This is a national course. The course is open for PhD students, postdocs, group leaders and core facility staff. We do accept application from other countries, but give priority to applicants from Swedish universities prior to applicants from industry and academics from other countries.

Please note that NBIS training events do not provide any formal university credits. The training content is estimated to correspond to a certain number of credits, however the estimated credits are just guidelines. If formal credits are crucial, the student needs to confer with the home department before submitting a course application in order to establish whether the course is valid for formal credits or not.

Entry requirements

Good general computer literacy is expected, but no previous experience in programming or R is required. You are expected to know basic concepts in mathematics and statistics, but the emphasis of the course is to learn how to use R.

 Participants are expected to use their own computers with pre-installed R and R Studio (detailed instructions will be given upon acceptance).


Due to our best practice to have a high teacher to student ratio we have set the number of participants to a maximum of 22 participants. If we receive more applications, participants will be selected based on several criteria. Selection criteria include correct entry requirements, motivation to attend the course as well as gender and geographical balance.


Entrance C11,
Biomedical Centre (BMC) / SciLifeLab
Uppsala University
Husargatan 3,
752 37 Uppsala




Learning outcomes

Upon completion of this course, you will be able to:

  • Describe different data structures commonly used in R.
  • Work with different data types.
  • Import and export data from and to R environment. 
  • Manipulate data.
  • Work with dataframes and lists.
  • Visualize the data.
  • Explain about R packages and steps to create them.
  • Install R packages from Bioconductor. 



Course schedule can be found here, LM: teacher 1; MR: teacher 2;  LV: teacher 3


All exercises can be found in here.



Precourse material

Please read carefully the Precourse material before the course start.


Course Staff

Nima Rafati - course leader (nima.rafati@nbis.se)

Prasoon Agarwal - course teacher (prasoon.agarwal@nbis.se)

Marcin Kierczak - course teacher (marcin.kierczak@scilifelab.se)

Sebastian DiLorenzo - course teacher (sebastian.dilorenzo@nbis.se)

A.A - teaching assistant (@nbis.se)

B.B - teaching assistant (@nbis.se)

CC attribution share alike This course content is offered under a CC attribution share alike license. Content in this course can be considered under this license unless otherwise noted.