Διδάσκοντες: Κωνσταντίνος Κουρτίδης, Ιωάννης Κοσμαδάκης
Κωδικός Μαθήματος: 15ΖΥ2Ν – Κ1
Εξάμηνο: 7ο (Χειμερινό)
Εβδομαδιαίες Ώρες Διδασκαλίας: 6
Αριθμός Ευρωπαϊκών Πιστωτικών Μονάδων (ECTS): 5
Προαπαιτούμενα: Προγραμματισμός Η/Υ
Το Μάθημα προσφέρεται σε Φοιτητές Erasmus: Ναι
Γλώσσα Διδασκαλίας και Εξετάσεων: Ελληνικά
Ηλεκτρονική Σελίδα Μαθήματος (URL): https://eclass.duth.gr/courses/424483/
Στόχος του μαθήματος και μαθησιακά αποτελέσματα
Στόχος αυτού του μαθήματος είναι να εξοικειώσει τους φοιτητές του Τμήματος Μηχανικών Περιβάλλοντος με τις βασικές αρχές της Μηχανικής Δεδομένων μέσω της γλώσσας προγραμματισμού Python. Μετά από μια διεξοδική εισαγωγή στην μεθοδολογία προγραμματισμού με την συγκεριμένη γλώσσα, οι φοιτητές αποκτούν πρακτική εμπειρία στην εξαγωγή και αποθήκευση μεγάλου όγκου περιβαλλοντικών δεδομένων, καθώς και στην επεξεργασία και οπτικοποίηση αυτών των δεδομένων σε πραγματικό χρόνο. Ασχολούνται επίσης με στρατηγικές επίλυσης προβλημάτων και εντοπισμού σφαλμάτων. Ταυτόχρονα, οι φοιτητές μαθαίνουν να συλλέγουν μετρήσεις από σχετικά όργανα, αισθητήρες και ηλεκτρονικές συσκευές χρησιμοποιώντας Python. Οι φοιτητές καλλούνται να επιδείξουν τις δεξιότητές τους μέσω πρακτικών εργασιών προγραμματισμού και ασκήσεων, οι οποίες όχι μόνο επικυρώνουν τη μάθησή τους αλλά και εμπλουτίζουν σημαντικά το μελλοντικό τους χαρτοφυλάκιο.
Περιέχομενα Μαθήματος
- Εισαγωγή, Μεταβλητές, Εκφράσεις και εντολές, Υπό Όρους Εκτέλεση, Δομές Δεδομένων
- Συναρτήσεις, Βρόχοι και Επανάληψεις
- Συμβολοσειρές και Διαχείριση Αρχείων
- Λίστες, Λεξικά και Πλειάδες
- Κανονικές Εκφράσεις – REGEX
- Λήψη και μεταφορά Δεδομένων στο Διαδίκτυο
- Χρήση υπηρεσιών ιστού και Διεπαφές Προγραμματισμού Εφαρμογών
- Εισαγωγή στις Bάσεις Δεδομένων
- Εικονικά περιβάλλοντα Anaconda, Σημειωματάρια Jupyter
- Ανάλυση δεδομένων – Οι Βιβλιοθήκες NumPy και Pandas
- Οπτικοποίηση δεδομένων – Η Βιβλιοθήκη Matplotlib
- Xειρισμός ακατάστατων και ελλειπόντων δεδομένων
- Δειγματοληψία και κατανόηση πειραματικών δεδομένων
Αξιολόγηση Φοιτητών
Η επιτυχής ολοκλήρωση του μαθήματος κρίνεται σε τέσσερις εργασίες προγραμματισμού με προοδευτικά αυξανόμενο βαθμό δυσκολίας. Οι δύο πρώτες εργασίες επικεντρώνονται σε βασικές μεθοδολογίες προγραμματισμού. Η τρίτη εργασία αφορά την αποτελεσματική διαχείριση μεγάλων ποσοτήτων μη οργανωμένων και ελλειπόντων δεδομένων. Η τέταρτη και τελευταία εργασία είναι ένα ολοκληρωμένο έργο ETL (Extract-Transform-Load) που ενσωματώνει όλες τις γνώσεις που αποκτήθηκαν κατά τη διάρκεια του μαθήματος. Επιπλέον, η Διαδικασία Αξιολόγησης Φοιτητών μπορεί να περιλαμβάνει προφορική εξέταση.
Συνιστώμενη Βιβλιογραφία
Ελεύθερα προσβάσιμες ηλεκτρονικές σημειώσεις του μαθήματος: Data Engineering with Python (15ΖΥ2Ν-Κ1)
Ελληνική Βιβλιογραφία
- “Εισαγωγή στον Υπολογισμό και τον Προγραμματισμό με την Python, 3η έκδοση/2022”, Συγγραφείς: Guttag John V., ISBN: 9789604911592
- “Εισαγωγή στην Python για τις Επιστήμες Υπολογιστών και Δεδομένων”, Έκδοση: 1η Εκδ./2021, Συγγραφείς: Harvey M. Deitel, Paul J. Deitel, ISBN: 9789605127442
Αγγλική Βιβλιογραφία
- “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