Instructors: Konstantinos Kourtidis, Ioannis Kosmadakis
Course Code: 15ΖΥ2Ν – Κ1
Semester: 7th (Winter)
Weekly teaching hours: 6
ECTS Credits: 5
Prerequisites: Computer Programming
Course offered to Erasmus students: Yes
Languages: Greek
Course URL: https://eclass.duth.gr/courses/424483/
Course objective and learning outcomes
The objective of this course is to acquaint departmental students with the fundamentals of Data Engineering through the Python programming language. Following a concise introduction to programming methodologies, students will gain hands-on experience in extracting and storing substantial volumes of environmental data, as well as processing and visualizing this data in real-time. They will also learn problem-solving and debugging strategies. Concurrently, students will learn to interface with relevant tools, sensors, and electronic measurement devices using Python. Students will showcase their Python skills through practical programming tasks and exercises. These will not only validate their learning but also contribute significantly to their portfolio.
Course Content
- Introduction, Variables, Expressions and Statements, Conditional Execution, Data Structures
- Functions, Loops and Iterations
- Strings and Data File Handling
- Lists, Dictionaries and Tuples
- Regular Expressions – REGEX
- Downloading and transferring data over the internet
- Use of web services and Application Programming Interfaces
- Introduction to Databases
- Anaconda Virtual Environments, Jupyter Notebooks
- Data Analysis – The NumPy and Pandas Libraries
- Data Visualization – The Matplotlib Library
- Handling messy and missing data
- Sampling and understanding of experimental data
Student Evaluation
The successful completion of the course relies on four progressively challenging programming tasks. The initial two tasks involve exercises on concise programming methodologies. The third task deals with the efficient management of large amounts of unorganized and incomplete data. The fourth and final task is a comprehensive ETL project that incorporates all the knowledge acquired throughout the course. Additionally, the Student Assessment Process may include an oral examination.
Recommended Literature
Freely accessible online course notes: Data Engineering with Python (15ΖΥ2Ν-Κ1)
Bibliography in Greek
- “Εισαγωγή στον Υπολογισμό και τον Προγραμματισμό με την Python, 3η έκδοση/2022”, Συγγραφείς: Guttag John V., ISBN: 9789604911592
- “Εισαγωγή στην Python για τις Επιστήμες Υπολογιστών και Δεδομένων”, Έκδοση: 1η Εκδ./2021, Συγγραφείς: Harvey M. Deitel, Paul J. Deitel, ISBN: 9789605127442
Bibliography in English
- “Introduction to Computation and Programming Using Python, 3rd edition”, Authors: Guttag John V., ISBN: 9780262542364
- “Intro to Python for Computer Science and Data Science, 1st edition”, Authors: Harvey M. Deitel, Paul J. Deitel, ISBN: 9780135404676