IS 557: Introduction to Scientific Programming with Python

This course introduces students to principles of scientific programming with the Python programming language. Aside from basic Python syntax, more advanced programming concepts and important scientific libraries essential for data analysis and research are introduced.

Learning outcomes
On completion of the course students should be familiar with the Python programming language and able to solve scientific and complex problems in Python. This covers the application of scientific libraries, some machine learning techniques, and the collection of data with web mining.
Acquired skills:

  • Handling of scientific programming projects
  • Independent choice of data-structures and methods to solve a given problem
  • Knowledge about the different scientific libraries and their advantages
  • Data preprocessing, analysis and visualization

Necessary prerequisites

Recommended prerequisites
Basic knowledge about programming languages, statistics, and linear algebra.

Forms of teaching and learningContact hoursIndependent study time
Lecture with integrated exercise4 SWS17 SWS
ECTS credits6
Graded yes
Form of assessmentWritten exam (60 min)
Restricted admissionyes
Further information
Performing lecturer
Prof. Dr. Markus Strohmaier
Georg Ahnert
Frequency of offeringFall semester
Duration of module 1 semester
Range of applicationM.Sc. MMM, M.Sc. Bus. Edu., M.Sc. Econ., MMDS
Preliminary course workStudents have to submit home assignments and collect at least 50% of the available points to be admitted to the exam.
Program-specific Competency GoalsCG 2
LiteratureFor instance: Introduction to Machine Learning with Python: A Guide for Data Scientists, Sarah Guido, O’Reilly
Course outlineThis course starts with the fundamental syntax and concepts of the Python programming language. Afterwards, we study selected state-of-the-art libraries for scientific applications, including data pre-processing and exploratory analysis. While we provide theoretical background where necessary, we strongly focus on the implementations to solve practical problems.