Study program / study programs: Advanced data analytics
Course: Programming
Teacher(s): Vladan B. Devedžić, Bojan B. Tomić, Zoran V. Ševarac, Dragan O. Đurić, Antun Balaž
Course status: Elective
ECTS points: 10
Prerequisites: none
Course objective:
Detailed introduction to current programming languages, methods and techniques in advanced data analytics.
Learning outcomes:
Students will master appropriate programming methods and techniques using state-of-the-art programming languages in advanced data analysis.
Course structure and content:
Most of the classes are focused on practical programming skills. Concepts and techniques are introduced through practical work, regardless of the programming language used in the course. It is envisaged that different programming languages will be used in classes, according to the development of the field so that it always works with state-of-the-art languages.
Introduction. Installation and use of appropriate programming environments. Program libraries and APIs. Documentation and its efficient use.
Data types. Simple data types. Arrays, strings, lists, dictionaries and other complex data types. Classes and objects, constructors, inheritance.
Operations, expressions, loops, branching, functions, methods, exceptions. Various types of operations and operands. Various types of expressions. Functions and methods (various types). Iterators and generators. Exception handling. Standard and non-standard libraries. Working with libraries important in data analysis.
Data processing and analysis. Data formats, data storage, data filtering, data display. Preparation of data for analysis (various techniques). Statistical data processing and analysis using appropriate program libraries.
Data visualization. Working with current libraries for data visualization.
Literature/Readings:
D. Beazley, B.K. Jones, Python Cookbook, 3rd Edition. O’Reilly Media, Inc., Boston, MA, 2013. Online. Available: https://www.oreilly.com/library/view/python-cookbook-3rd/9781449357337/
Documentation of several important program libraries and packages.
The number of class hours per week:
Lectures: 4
Labs: 0
Workshops: 0
Research study: 3
Other classes: 0
Teaching methods:
Individual and group work; lectures and labs
Evaluation/Grading (maximum 100 points):
Pre-exam requirements (Project): 50
Final exam (Programming problem): 50