Advanced Programming in R, 6 credits

Avancerad programmering i R, 6 hp


Main field of study

Computer Science

Course level

Second cycle

Course type

Single subject and programme course


Krzysztof Bartoszek

Course coordinator

Krzysztof Bartoszek

Director of studies or equivalent

Jolanta Pielaszkiewicz

Available for exchange students



ECV = Elective / Compulsory / Voluntary
Course offered for Semester Weeks Timetable module Language Campus ECV
Single subject course (Half-time, Day-time) Autumn 2024 202436-202444 1+3+4 English Linköping, Valla
F7MML Statistics and Machine Learning, Master´s Programme - First and main admission round 1 (Autumn 2024) 202436-202444 1 English Linköping, Valla C
F7MML Statistics and Machine Learning, Master´s Programme - Second admission round (open only for Swedish/EU students) 1 (Autumn 2024) 202436-202444 1 English Linköping, Valla C

Main field of study

Computer Science

Course level

Second cycle

Advancement level


Course offered for

  • Master's Programme in Statistics and Machine Learning

Entry requirements

  • 180 ECTS credits passed including 90 ECTS credits in one of the following subjects:
    • statistics
    • mathematics
    • applied mathematics
    • computer science
    • engineering
  • Passed courses in:
    • calculus
    • linear algebra
    • statistics
    • programming
  • English corresponding to the level of English in Swedish upper secondary education (Engelska 6)
    Exemption from Swedish

Intended learning outcomes

After completion of the course the student should on an advanced level be able to:

  • apply parallel programming and performance enhancement tools in order to improve R code,
  • create basic and advanced functions in R using programming techniques such as reading data from file or Internet, assignment and manipulation of data structures, defining own functions, iterations and conditional (if-then-else) statements
  • apply debugging techniques on R-code,
  • create an R package and organize one’s code into it,
  • plan and carry out course work within given time frames

Course content

The course introduces general programming techniques and their practical implementation in the R language.

The course covers the following topics:

  • reading data from file, from the internet, and printing to output
  • data structures, functions and objects
  • iteration and conditional statements
  • numerical linear algebra in R
  • debugging
  • object-oriented programming
  • performance enhancement
  • computational complexity
  • parallel programming
  • literate programming
  • development of R packages

Teaching and working methods

The teaching comprises lectures, seminars and computer exercises.
 Homework and independent study are a necessary complement to the course.

Language of instruction: English


The course is examined through:

  • individually written reports on computer assignments, grading scale: EC P/F
  • written reports on computer assignments in groups, grading scale: EC P/F
  • active participation in seminars, grading scale: EC P/F
  • individually written computer examination, grading scale: EC

Individual and group reports are treated as a joint examination part.

The final grade for the course is based on grade from the individually written examination and requires grade Pass from remining exams parts.

Detailed information about the examination can be found in the course’s study guide.

If special circumstances prevail, and if it is possible with consideration of the nature of the compulsory component, the examiner may decide to replace the compulsory component with another equivalent component.

If the LiU coordinator for students with disabilities has granted a student the right to an adapted examination for a written examination in an examination hall, the student has the right to it.

If the coordinator has recommended for the student an adapted examination or alternative form of examination, the examiner may grant this if the examiner assesses that it is possible, based on consideration of the course objectives.

An examiner may also decide that an adapted examination or alternative form of examination if the examiner assessed that special circumstances prevail, and the examiner assesses that it is possible while maintaining the objectives of the course.

Students failing an exam covering either the entire course or part of the course twice are entitled to have a new examiner appointed for the reexamination.

Students who have passed an examination may not retake it in order to improve their grades.



Other information

Planning and implementation of a course must take its starting point in the wording of the syllabus. The course evaluation included in each course must therefore take up the question how well the course agrees with the syllabus. 

The course is conducted in such a way that there are equal opportunities with regard to sex, transgender identity or expression, ethnicity, religion or other belief, disability, sexual orientation and age.

If special circumstances prevail, the vice-chancellor may in a special decision specify the preconditions for temporary deviations from this course syllabus, and delegate the right to take such decisions.


Institutionen för datavetenskap
Code Name Scope Grading scale
LAB2 Laboratory work 1 credits EC
DAT4 Computer Exam 5 credits EC
FRIV Voluntary examination 0 credits EC
There is no course literature available for this course in studieinfo.

This tab contains public material from the course room in Lisam. The information published here is not legally binding, such material can be found under the other tabs on this page.

There are no files available for this course.