PTI01810 – Data Science I, Einführung in Python und Datenvorverarbeitung

Modul
Data Science I, Einführung in Python und Datenvorverarbeitung
Data Science I, Introduction to Python and Data Preprocessing
Modulnummer
PTI01810
Version: 4
Fakultät
Physikalische Technik / Informatik
Niveau
Bachelor
Dauer
1 Semester
Turnus
Wintersemester
Modulverantwortliche/-r

Prof. Dr. Jens Flemming
Jens.Flemming(at)fh-zwickau.de

Dozent/-in(nen)

Prof. Dr. Mike Espig
mike.espig(at)fh-zwickau.de
Dozent/-in in: "Data Science I, Einführung in Python und Datenvorverarbeitung"

Prof. Dr. Jens Flemming
Jens.Flemming(at)fh-zwickau.de
Dozent/-in in: "Data Science I, Einführung in Python und Datenvorverarbeitung"

Lehrsprache(n)

Deutsch - 80.00%
in "Data Science I, Einführung in Python und Datenvorverarbeitung"

Englisch - 20.00%
in "Data Science I, Einführung in Python und Datenvorverarbeitung"

ECTS-Credits

10.00 Credits

Workload

300 Stunden

Lehrveranstaltungen

9.00 SWS (3.00 SWS Praktikum | 6.00 SWS Vorlesung mit integr. Übung / seminaristische Vorlesung)

Selbststudienzeit

165.00 Stunden
165.00 Stunden Selbststudium - Data Science I, Einführung in Python und Datenvorverarbeitung

Prüfungsvorleistung(en)

Testat
in "Data Science I, Einführung in Python und Datenvorverarbeitung"

Prüfungsleistung(en)

schriftliche Prüfungsleistung
Modulprüfung | Prüfungsdauer: 120 min | Wichtung: 100%
in "Data Science I, Einführung in Python und Datenvorverarbeitung"

Medienform
Keine Angabe
Lehrinhalte/Gliederung

Kern des Moduls bilden die Grundlagen der Programmierung mit Python sowie der Einsatz der Software-Bibliotheken NumPy und Pandas für Data-Science-Anwendungen und künstliche Intelligenz.

Python ist eine noch junge, sehr mächtige, aber leicht zu erlernende Programmiersprache. Sie ist als Open-Source-Software für alle gängigen Betriebssysteme verfügbar und hat sich innerhalb weniger Jahre zum De-Facto-Standard im Bereich Data Science und künstliche Intelligenz entwickelt. Ihr modulorientiertes Design bietet nahezu unbegrenzte Einsatzmöglichkeiten bei sehr geringem Programmieraufwand. Von kurzen Skripten für Routineaufgabe bis zu interaktiven Web-Apps ist alles möglich.

NumPy und Pandas sind die wichtigsten Python-Module für den effizienten Umgang mit großen Datenmengen. Während NumPy seinen Fokus auf schnelle Berechnungen mit großen Datenmengen legt, bietet Pandas umfangreiche Funktionalität zum Aufbereiten, Sortieren und Auswerten von Daten.

Im Kontext der Datenbeschaffung und -verarbeitung werden im Modul auch rechtliche und ethische Aspekte fachübergreifend diskutiert.

Grundlagen der Python-Programmierung:

  • Installation und Benutzung von Tools aus dem Python-Ökosystem
  • Grundlagen der Programmierung (Ein- und Ausgabe, Datenstrukturen, Ablaufsteuerung)
  • Code-Strukturierung mit Funktionen, Modulen, Paketen
  • Objektorientierte Programmierung (Klassen, Vererbung)
  • Mechanismen zur Fehlerbehandlung

Überblick über Standard-Module von Python:

  • Arbeit mit Datumsangaben und Uhrzeiten
  • Datenkompression und -dekompression
  • Interaktion mit dem Betriebssystem
  • Performance-Messung
  • Mustersuche in Zeichenketten
  • Zugriff auf das Internet

Vertiefende Themen:

  • Datenbeschaffung mittels Web-Scraping und Verwendung von Web-APIs
  • Arbeiten mit NumPy-Arrays
  • Laden und Organisieren großer Datenmengen mit Pandas
  • Umstrukturieren und Zusammenführen von Daten mit Pandas
  • spezielle Pandas-Datentypen, insbesondere für Datums- und Zeitangaben sowie für kategorielle Nominal- und Ordinaldaten.
  • Dokumentation und Planung mittels Unified Modeling Language (UML)
Qualifikationsziele

Die Studierenden können die Programmiersprache Python sicher und zielführend einsetzen und besitzen tiefgehende Kenntnisse der Software-Bibliotheken Pandas und NumPy. Sie sind in der Lage, die richtige Auswahl elementarer Methoden und Konzepte zur Lösung von Übungs- und Praxisaufgaben zu treffen. Unter Verwendung von Hilfsmitteln wie vorlesungsbegleitender Literatur können sie problemslösungsorientiert und allgemeine Grundsätze professioneller und praxisgerechter Software-Entwicklung beachtend arbeiten. Die Studierenden können die Unified Modeling Language (UML) zur Spezifikation und Dokumentation von Software-Teilen und anderen Systemen einsetzen. Sie kennen rechtliche und ethische Grundfragen beim Umgang mit Daten.

Besondere Zulassungsvoraussetzung

Es werden keine speziellen Kenntnisse vorausgesetzt.

Empfohlene Voraussetzungen
Keine Angabe
Fortsetzungsmöglichkeiten

PTI01821, PTI01831, PTI01841, PTI01860, PTI01870

Literatur
  • Vorlesungsskript
  • Scopatz, Huff: Effective Computation in Physics: Field Guide to Research with Python, O’Reilly
  • Zed A. Shaw: Learn Python 3 the Hard Way, Addison-Wesley
  • Real Python Course, Part 1, Real Python Team (Real Python, 2017)
  • Luciano Ramalho:Fluent Python: Clear, Concise, and Effective Programming, O'Reilly Media
  • Géron: Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow, O'Reilly Media
  • Chollet: Deep Learning with Python, Manning
Hinweise

Die Modulprüfung kann in deutscher und englischer Sprache abgelegt werden.