Object-oriented Programming for Data Science

5 ECTS Deutsch M.Eng. M.Sc.

Letzte Aktualisierung: 28.02.2025

Grunddaten
Kürzel OPDS MMW
Dauer des Moduls 1 Semester
Angeboten im Wintersemester
Veranstaltungsort Gummersbach
Teil von Obermodul
Verantwortliche
Prüfung
Prüfungsformen

Hausarbeit

Mündliche Prüfungen

Präsentation

Prüfungsphasen

Keine Angabe

Prüfende
1. Christian Wolf
2. Elena Algorri
Workload
Vorlesung 75 h
Übung 0 h
Seminar 0 h
Praktikum 0 h
Projektbetreuung 0 h
Projektarbeit 75 h
Selbststudium 0 h
Gesamt 150 h
Studiengänge
Pflichtmodul
Automation & IT PO-3PO-4
Sem. 1, 2
Wirtschaftsingenieurwesen PO-2
Sem. 1, 2
Wahlmodul

Keine Zuordnung

Voraussetzungen
Zwingend
Grundkenntnisse in der Programmierung

Angestrebte Lernergebnisse

After Attending this course students will be able to

  • apply the advanced principles and concepts of Object Oriented Programming and develop rograms for basic data analytics,
  • design and write object oriented programs using advanced Object Oriented constructs in Python,
  • modify an existing Object-Oriented program,
  • extensively test an Object-Oriented program,
  • construct Program Libraries,
  • demonstrate an understanding of the underlying principles and concepts of Object-Oriented Programming,
  • document an Object-Oriented program, and
  • perform basic data analytics,

by

  • understanding abstract data types, classes, objects, messages, Instance variables, methods, encapsulation, private and public access, class variables, constructors, class interface, class implementation.
  • understanding classes and objects, private and public class members, constructors, initialisation list, static data members, overloading, inline, separation of interface and implementation.
  • understanding Data structures, iterators and containers.
  • using error handling and debugging practices

in order to

  • solve data science tasks by developing fast and reliable object-oriented software, and
  • be qualified for a professional career as automation engineer developing digitalindustrial solutions.

Modulinhalte

a) Classes, Abstract Classes, Methods, Variables

  • Abstract data types, classes, objects, messages, Instance variables, methods, encapsulation, private and public access, class variables, constructors, class interface, class implementation.
  • Classes and objects, private and public class members, constructors, initialisation list, static data members, overloading, inline, separation of interface and implementation.

b) Composition

  • Data structures, iterators and containers.
  • Design, code and test a series of object-oriented programs to re-enforce lecture content.

c) Destructors

  • Exception handling.
  • Function overloading. Operator overloading.
  • Generic Types, Static and Dynamic Binding, Polymorphism, Overloading.
  • Inheritance: Types of Inheritance, Construction, Destruction, Multiple Inheritance.

d) Data analysis functions

  • Data Preprocessing (Outlier Removal, Filters, Smoothening, etc.)
  • Regression functions
  • Classification methods
  • Machine Learning models i.e. Random Forest
  • AI models i.e. Neural Networks

Lehr- und Lernmethoden (Medienformen)

Seminaristischer Unterricht, Projektarbeit, Fallstudien

Empfohlene Literatur

  • Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython (ISBN: 1491957662)
  • Einstieg in Python: Die Einführung für Programmieranfänger, inkl. Objektorientierung (ISBN: 3836273799)
  • Machine Learning mit Python und Keras, TensorFlow 2 und Scikit-learn (ISBN: 374750213X)

Besonderheiten

Keine Angabe