NDAB24000U Python Programming for Data Science

Volume 2024/2025

BSc Programme in Biochemistry
BSc Programme in Biology
BSc Programme in Biotechnology
BSc Programme in Molecular Biomedicine
MSc Programme in Bioinformatics


This course is an introduction to programming in Python, with focus on data processing and analysis. It includes basic programming concepts such as data types, conditionals, loops, functions, object oriented programming, pattern matching (regular expressions), and computational complexity. In addition, it also provides technical skills relevant to the data science pipeline such as the ability to log on to an external server, and to navigate a Unix shell.

Learning Outcome

After completing the course, the student will master key programming concepts such as data-types, variables, conditionals, loops, and functions, and have an understanding of the central concepts in object oriented programming, pattern matching and computational complexity. Finally, the student will have acquired a basic understanding of a Unix/Linux environment.

The student is capable of solving small to medium sized programming tasks in Python, in particular tasks related to data processing and analytics. The student can produce programs that are well-written, well-structured, and well-commented. Finally, the student knows how to execute scripts on a remote server, and navigate using a Unix command line interface on such a server.

After completing the course, the student is capable of solving the many small to medium size programming tasks that arise in Data Science disciplines, and is able to write well-structured and maintainable programs in Python. The student is also capable of running programs both locally and on remote servers, and be able to navigate in a Unix environment.

The student

  • can explain the differences between various data-types in Python and can select the relevant type for a given programming task
  • can give a detailed description of conditionals and loops, and is able to explain how loops relate to the complexity of a program
  • can motivate the concepts of function and module, and give examples of how these tools should be used to structure code
  • can explain the basic concepts of Object Oriented Programming, and give examples of appropriate uses of classes and object
  • can identify problems for which regular expressions are well suited, and is able to construct an appropriate regular expression for a given pattern matching problem
  • can give examples of how to handle errors in a program
  • is capable of independently finding online information about external Python modules, and applying this information to solve a specific task

See Absalon.

This is an introductory programming course: no prior programming experience is required. We do assume knowledge corresponding to a basic University-level mathematics introduction course (e.g. Introduction to the Mathematics for the Chemical Sciences).
Lectures and exercises mixed (6-9 hours per week). Some of the exercises will involve simple Biological examples, but a Biological background is not required for taking the course.
Participants are expected to bring a laptop equipped with a network card to class (contact the teacher if not possible).
This course is equivalent to NDAB21003U Python programmering til datavidenskab therefore it is not allowed to sign up for both courses.
  • Category
  • Hours
  • Lectures
  • 21
  • Preparation
  • 160
  • Practical exercises
  • 21
  • Exam
  • 4
  • Total
  • 206
Continuous feedback during the course of the semester
7,5 ECTS
Type of assessment
On-site written exam, 4 hours under invigilation
Type of assessment details
The on-site written exam is an ITX exam.
See important information about ITX-exams at Study Information, menu point: Exams -> Exam types and rules -> Written on-site exams (ITX)
Exam registration requirements

Approval of 80% of the weekly exercises.

All aids allowed

The University will make computers available to students at the ITX-exam.

Students are not permitted to bring digital aids like computers, tablets, calculators, mobile phones etc.

Marking scale
7-point grading scale
Censorship form
No external censorship
Several internal examiners

Same as ordinary exam.

80% of the exercises must be handed in and approved no later than three weeks before the reexamination.

If 10 or fewer students have signed up for re-exam, the type of assessment will be changed to 30 minutes oral exam, 30 minutes preparation, all aids allowed.

Criteria for exam assesment

See Learning outcome