These lecture notes are intended for introductory linear algebra courses, suitable for university students, programmers, data analysts, algorithmic traders and etc.
The lectures notes are loosely based on several textbooks:
- Linear Algebra and Its Applications by Gilbert Strang
- Linear Algebra and Its Applications by David Lay
- Introduction to Linear Algebra With Applications by DeFranza & Gagliardi
- Linear Algebra With Applications by Gareth Williams
However, the crux of the course is not about proving theorems, but to demonstrate the practices and visualization of the concepts. Thus we will not engage in strictly precise deduction or notation, rather we aim to clarify the elusive concepts and thanks to Python/MATLAB, the task is much easier now.
Though the lectures are for beginners, it is beneficial that attendants had certain amount of exposure to linear algebra and calculus.
And also the attendee are expected to have basic knowledge (3 days training would be enough) of
- Python
- NumPy
- Matplotlib
- SymPy
All the codes are written in an intuitive manner rather than efficient or professional coding style, therefore the codes are exceedingly straightforward, I presume barely anyone would have difficulty in understanding the codes.
The notes were written in JupyterLab, the interative plot requires ipympl
. To install, type in conda install -c conda-forge ipympl
if you have JupyterLab 3.x. Check ipympl
page for more details.
These notes will equip you with most needed and basic knowledge for other subjects, such as Data Science, Econometrics, Mathematical Statistics, Control Theory and etc., which heavily rely on linear algebra. Please go through them patiently, you will certainly have a better grasp of the fundamental concepts of linear algebera. Then further step is to study the special matrices and their application with your domain knowledge.
It is advisable to either open the notebooks in Jupyter nbviewers (links below) or download them, since github has lots of rendering mistakes in LaTeX and sometimes even missing plots.
Lecture 1 - System of Linear Equations
Lecture 2 - Basic Matrix Algebra
Lecture 3 - Determinants
Lecture 4 - LU Decomposition
Lecture 5 - Vector Operations
Lecture 6 - Linear Combination
Lecture 7 - Linear Independence
Lecture 8 - Vector Space and Subspace
Lecture 9 - Basis and Dimension
Lecture 10 - Column, Row and Null Space
Lecture 11 - Linear Transformation
Lecture 12 - Eigenvalues and Eigenvectors
Lecture 13 - Diagonalization
Lecture 14 - Application to Dynamic System
Lecture 15 - Inner Product and Orthogonality
Lecture 16 - Gram-Schmidt Process and Decomposition
Lecture 17 - Symmetric Matrices and Quadratic Form
Lecture 18 - Singular Value Decomposition
Lecture 19 - Multivariate Normal Distribution