2023/2024
Introduction to Python and elements of data manipulation
Type:
Optional course (faculty)
Delivered by:
International College of Economics and Finance
When:
1 module
Open to:
students of one campus
Instructors:
Alexander Zasorin
Language:
English
ECTS credits:
3
Contact hours:
16
Course Syllabus
Abstract
Introduction to Python and elements of data manipulation is a one-month course for the first-year students of ICEF master program. This course is for students specializing in economics and finance. The students are not assumed to have programming skills or knowledge, only computer skills are required as well as basic math knowledge: number, vector, matrix. The course is taught in English and Russian. All the course work is supposed to be in IPython environment: either Jupyter or Google Colab. Another IDE (integrated development environment) is not supposed to be used.Basic ideas of using Python to manipulate data are studied: variables, types, conditions, loops, functions, imported modules.Prerequisites•math knowledge: number, vector, matrix, equation, solution, derivative, maximization•computer skills: working with browser, files
Learning Objectives
- The main objective of the course is to give students who have never used programming languages before a short (one-month) introduction to Python as an “advanced calculator”, tool not only to sum/multiply two numbers and take logarithms and powers, but also to do computations with conditions and loops, to operate matrices and vectors, to take derivatives, integrals, solve equations using external Python libraries.
- The students should learn how to enter Google Colab or Jupyter IPython notebook, run code in it.
- The students should learn basic Python concepts: variable, type, operator, logical expression, function, conditional operator, loop, import, array, dictionary, object. They should understand from a program listing: what value is contained in a certain variable after certain code is run, what value which expression has, whether logical expression is true or false.
- The students should learn from scipy module how to operate with standard probability distributions: find probability using cumulative distribution function and probability mass function, find value using inverse cumulative distribution function.
- The students should learn from sympy module how to solve simple equations, take derivative, compute integral, find maximum/minimum of a function.
- The students should learn from pandas dataframe how to load csv/tsv data, and compute some basic descriptive statistics with it.
- The course is not rigorous neither mathematically, algorithmically nor in Python language specification. The course does not teach algorithms or data structures, memory or time-management in programming, Python language details such as iterators, generators, decorators, classes. The course does not teach machine learning, forecasting. The course does not teach data crawling, preprocessing, parsing.
Expected Learning Outcomes
- By the end of the course the students are supposed to gain an ability using Jupyter IPython or Google Colab to carry out calculations with numbers, vectors, matrices, single variable function maximizations/minimizations, taking derivatives and integrals, solving equations, computation of probabilities and percentage points for standard distributions, loading data from csv/tsv and computing descriptive statistics
Course Contents
- First steps in IPython
- Language basic constructions
- Numpy and Scipy packages
- Pandas dataframes
Assessment Elements
- midterm
- online automatic tests progress
- home-assignment(one or two during the course with solution for self-check), not included into grade
Bibliography
Recommended Core Bibliography
- 9781491912140 - Vanderplas, Jacob T. - Python Data Science Handbook : Essential Tools for Working with Data - 2016 - O'Reilly Media - https://search.ebscohost.com/login.aspx?direct=true&db=nlebk&AN=1425081 - nlebk - 1425081
Recommended Additional Bibliography
- Downey, A. (2015). Think Python : How to Think Like a Computer Scientist (Vol. Second edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1105725