This is a MA-level course in quantitative economics, data science, and causal inference in economics.
This course will have a combination of coding, theory, and development of mathematical background. All coding is done in Python.
and Paul's HTML Slides, source
- Get a GitHub ID and apply for the Student Developer Pack to get further free features
- Consider clicking
Watch
at the top of this repository to see file changes
All materials will be on github, and canvas will be used to submit assignments/communication.
There is no assigned physical textbook, but we will be using lecture notes from:
While you can use the UBC JupyterOpen for this course, we strongly suggest installing Python on your local machine. The easiest way to do this is:
- Install Anaconda to install python and its packages for your operating system
- Install git for your operating system
- Optionally: install (a) Github Desktop; (b) VS Code to make it easier to manage downloaded notebooks.
- Then clone the following repositories onto your local machine using a terminal, using either git directly (e.g. in terminal go
git clone https://github.com/ubcecon/ECON526.git
), GitHub Desktop, or VS Code- https://github.com/ubcecon/ECON526
- https://github.com/QuantEcon/lecture-python-intro.notebooks
- https://github.com/QuantEcon/lecture-python.notebooks
- https://github.com/QuantEcon/lecture-datascience.notebooks
- In some cases you will need to manually install packages (by doing
pip install -r requirements.txt
within some of those repositories, or manually installing packages as required)
For introductory users, we recommend using GitHub Desktop which allows cloning from a button on the public github repo directly. For intermediate users, we recommend skipping the GitHub Desktop and instead using VS Code since you will likely begin using the VSCode editor as your primary Python (and latex) editor sooner than later.
See Syllabus for more details
The course has two midterms, weekly to bi-weekly problem sets, and a final data project due the last day of class.
- September 10th Midnight: Problem Set 1
- September 17th Midnight: Problem Set 2
- September 25th Midnight: Problem Set 3
- October 4th Midnight: Problem Set 4
- October 5th: Midterm Logistics Practice with Midterm Practice Problems
- October 11th: IN CLASS MIDTERM #1'
- October 25th: Problem Set 5
- October 2nd, 10am: Problem Set 6
- November 8th: IN CLASS MIDTERM #2
- December 8th Midnight: Data Project Due
See the /problem_sets
folder within this repository for the problem sets as jupyter notebooks. You should modify them directly as Jupyter notebooks, and the TA will explain how to submit them.
This year the course will be taught in three parts where the later parts of the course will follow material in Causal Inference for The Brave and True.
This lecture begins assuming you have completed the math/programming bootcamp for our masters students, or had an existing python-based programming course. To refresh your knowledge, see basics in QuantEcon Data Science Lectures or QuantEcon Python Programming for Economics and Finance.
Slides for the lectures can be found here and
-
September 6: Introduction to Numerical Linear Algebra and its Applications in Data Science
- Topics: Overview of computational complexity and numerical precision, solving systems of equations, geometric interpretations of linear algebra, matrix decompositions, linear least squares, and eigenvalues and eigenvectors. Preparation for applications.
- Material:
- Self-study:
- Basics of linear algebra, matrices, norms, and linear independence: https://python.quantecon.org/linear_algebra.html
- Numerical optimization: https://datascience.quantecon.org/scientific/optimization.html
- Systems of Equations: https://python.quantecon.org/linear_algebra.html#solving-systems-of-equations
- Eigenvectors and eigenvalues: https://python.quantecon.org/linear_algebra.html#eigenvalues-and-eigenvectors
- Downloading and manipulating data in Python: https://intro.quantecon.org/long_run_growth.html and https://intro.quantecon.org/business_cycle.html
- (Optional) Extra Material:
- Introductory material on linear algebra: https://intro.quantecon.org/linear_equations.html and https://datascience.quantecon.org/scientific/applied_linalg.html
- Matrix decompositions and other topics: https://python.quantecon.org/linear_algebra.html#further-topics
-
September 11: Applications of Linear Algebra (Eigenvalues and Discounting)
- Topics: Geometric series and present values, difference equations, steady states, and convergence, unemployment dynamics, present discounted values
- Material:
- Finishing off Linear Algebra Foundations
- Eigenvalues and Stability, Jupyter, PDF
- Self-study:
- Geometric Series and Present Values: https://intro.quantecon.org/geom_series.html#example-interest-rates-and-present-values
- Portfolio example: https://datascience.quantecon.org/scientific/applied_linalg.html#portfolios
- Unemployment Dynamics example: https://datascience.quantecon.org/scientific/applied_linalg.html#unemployment-dynamics
- (Optional) Extra Material:
- Supply and Demand: https://intro.quantecon.org/intro_supply_demand.html
- More on Competitive Equilibrium: https://intro.quantecon.org/supply_demand_multiple_goods.html
-
September 13: Latent Variables and Intro to Unsupervised Learning
- Topics: Finished off eigenvalues and dynamics, principle components, and present discounted values
- Material:
- Self-study:
-
September 18: More on Latent Variables and Clustering
- Topics: Finish off continuous latent variables, PCA, auto-encoders, clustering, and started dynamics
- Material:
- Self-study:
-
September 20: Dynamics
- Topics: Dynamical systems, stability, fixed points, linearization, intro to the Solow-Swan growth model
- Material:
- Self-study:
- Solow-Swan Growth Model Derivation: https://intro.quantecon.org/solow.html (skip 20.3)
- Nonlinear Dynamics and Stability: https://intro.quantecon.org/scalar_dynam.html
- Review taylor series, just to first order
- (Optional) Extra Material:
- More on the Solow Model and Python: https://python-programming.quantecon.org/python_oop.html#example-the-solow-growth-model
-
September 25: Probability, Randomness, and Independence
- Topics: Axioms of probability, LLN and CLT, and Conditional Independence
- Material:
- Self-study:
- (Optional) Extra Material:
-
September 27: Stochastic Processes and Forecasts
- Topics: Conditional expectations, Bayes' rule, Law of Iterated Expectations, stochastic processes
- Material:
- (Optional) Extra Material:
- https://python.quantecon.org/finite_markov.html for more on Markov Chains
- https://python.quantecon.org/ar1_processes.html for more on AR(1) processes
- https://datascience.quantecon.org/scientific/randomness.html#loan-states for a simple Markov Chain example
-
October 2 (Statutory holiday)
-
October 4: Markov Chains and Introduction to Causality and Counterfactuals
- Topics: Finish stochastic processes and Markov Chains and briefly setup causality and counterfactuals
- Material:
- Finish Stochastic Processes
- Self-Study:
-
October 9 (Statutory holiday)
-
October 11
- IN CLASS MIDTERM #1
-
October 12 ("Make-up Monday") Introduction to Causality, continued
-
October 16 Stats Review: Quantifying Uncertainty in Causal Inference
-
October 18 Uncertainty Quantification II
- Material:
-
October 23 Causal Graphical Models
-
October 25 Regression, Confounders
- Material:
-
October 30 Instrumental Variables, Noncompliance, LATE
-
November 1: Matching
- November 6: Matching
- November 8
- IN CLASS MIDTERM #2
- November 9 (TA session): Predictive Models
- November 13 (Midterm Break)
- November 15 (Midterm Break)
- November 20: Finish Matching, start Difference in Differences
- November 22: Panel Data and Fixed Effects, The Difference in Differences Saga
- November 27: Synthetic Control
- November 29: Debiased/Orthogonal Machine Learning
- December 4: Treatment Heterogeneity and Conditional Effects
- December 6: 8. Neural Networks
- December 15
- DATA PROJECT DUE