Acest curs se adresează începătorilor în domeniul Computer Science.
În cadrul acestui curs, participanții vor învăța cum să configureze mediul, cum să scrie primele linii de cod in Python folosind biblioteci numerice și tehnici de vizualizare a datelor. Acest curs poate fi văzut ca fiind o sursa de idei de sine stătătoare sau un pas spre Learning Path-ul de Machine Learning.
Pentru a putea participa în cadrul acestui curs nu sunt necesare cerințe preliminare.
Module 1: Setting up
- Jupyter Notebook
- Jupyter Notebook magic
- Google Colab
Module 2: Basic Python Syntax
- Arithmetic Operators
- If statement
- Hands-on Lab: Writing a “Hello World” program, working with all the Python basic data types, using basic module operations, getting familiar with input and output
- For and While statements
- Hands-on Lab: Writing our first Python function, understanding the similarities and differences between the different kinds of collections, using the specific Python syntax for doing collection search and iteration.
- Error handling
- Hands-on Lab: Learning how to import modules in different ways, how to create our own module, how to do exception handling an elegant way and how to declare and raise our own custom exceptions.
Module 3: Basic Python OOP
- Classes and Objects
- Attributes and Methods
- Abstraction and Encapsulation
- Hands-on Lab: Writing our first Python class, getting familiar with dunders, creating a basic class hierarchy; learning the difference between class aggregation and inheritance and some use cases for each; learning the
- Python philosophy around private class attributes and methods
Module 4: Data Visualization
- Formatting Axes
- Bar Plot
- Pie Chart
- Scatter Plot
- Contour Plot
- Box Plot
- Violin Plot
- Hands-on Lab: Ploting basic polynomes and mathematical functions, playing with the number of discrete points in the plot, modifying different style and color parameters, finishing up the plot with labels and a legend and exporting it to different formats.
Module 5: Pandas
- Hands-on Lab: Getting some experience in declaring and working with Series and DataFrames, reading DataFrames from real files, converting numpy arrays to Series and back, Indexing by boolean indexes
- Missing Data
- Merging and Joining
- Hands-on Lab: Learning different basic methods of data cleaning and preprocessing. Getting some statistical measurements of the data. Trying to correlate data from multiple DataFrames.
Module 6: NumPy
- Data Types
- Hands-on Lab: Working out the syntax and conceptual differences between python lists and numpy arrays, converting from one to the other, analyzing the different kind of data types and array shapes, learning to think through problems in a vectorized way.
- Binary Operators
- Mathematical Functions
- Statistical Functions
- Basic Linear Algebra
- Hands-on Lab: Learning how to apply functions and operators directly on vectors, computing some classical statistical aggregates efficiently, trying to index and apply operations on multiple vectors in the easiest way
- Project: Preprocessing Pipeline for Machine Learning Algorithms