ECON 4370 / 6370 Computing for Economics

Lecture 0: Course Overview

Zhan Gao

24 August 2026

Overview

  1. Introduction
  2. Syllabus
  3. Software Installation
  4. R Basics

Introduction

ECON 4370 / 6370 Computing for Economics

Instructor

Zhan Gao (website)
zhangao [at] smu [dot] edu
Office Hours: Tuesday and Thursday 4 - 5pm @ 301U, Umphrey Lee

Teaching Assistant

Furong Guo
furongg [at] smu [dot] edu
Office Hours: Tuesday and Thursday 2 - 4pm by appointment

Syllabus Highlights


(Read the full document on Canvas.)

Why this course?

Fill in the gaps left between traditional econometrics and methods classes and the real world problems.

  • You need practical skills to implement your ideas with real/simulated data.
        … on a “computer”

    • Computing skills are largely distinct from (and complementary to) the core ’metrics oeuvre familiar to economists
    • Data viz, cleaning and wrangling; simulation; cloud computation; relational databases; machine learning; etc
  • Unfortunately, you still need to learn a programming language that the computer understands to get the job done
        … even with the rapid advances of Generative AI

    … but maybe soon. Let’s embrace it starting from this course

  • That said, it is MORE important to know what you (or the AI model) are doing behind the scenes
        … you are the manager who knows what, how and WHY

Why this course?

A question to be answered and/or a decision to be made

Data
numbers/text/images/etc. with context (David More & George Cobb, 1997)
Collection / retrieval / simulation
cleaning / wrangling / visualization …

Model
mathematical description of (1) the data generating process, (2) how does data depend on the model parameters

Computation
estimate parameters from data → prediction, inference, decision
which answers the question and/or makes the decision

Learning Outcomes

  • Write and execute reproducible code in R for data analysis and visualization
    • Python is perfectly fine … but not used in the course materials
    • Choice of language is less and less important in the age of AI
  • Use shell tools, Git(hub) for version control and collaborative workflows
  • Collect, clean, and organize data from diverse sources
  • Implement econometric and statistical methods for causal inference and economic forecasting
  • Implement basic machine learning algorithms
  • Explore computing techniques and modern computing infrastructure
  • Develop fully reproducible projects including data, code and documentation

You, at the end of this course

Getting started


Software installation and registration

  1. Download R.

  2. Download RStudio or Positron.

  3. Download Git.

  4. Create an account on GitHub and register for a student/educator discount.

Some OS-specific extras

I’ll detail further software requirements as and when the need arises. However, to help smooth some software installation issues further down the road, please also do the following (depending on your OS):

  • Windows: Install Rtools. I also recommend that you install Chocolately.
  • Mac: Install Homebrew. I also recommend that you configure/open your C++ toolchain (see here.)
  • Linux: None (you should be good to go).

Checklist

☑ Do you have the most recent version of R?

version$version.string
## [1] "R version 4.5.3 (2026-03-11)"

☑ Do you have the most recent version of RStudio? (The preview version is fine.)

RStudio.Version()$version
## Requires an interactive session but should return something like "[1] '1.4.1100'"

☑ Have you updated all of your R packages?

update.packages(ask = FALSE, checkBuilt = TRUE)

Checklist (cont.)

Open up the shell.

  • Windows users, make sure that you installed a Bash-compatible version of the shell. If you installed Git for Windows, then you should be good to go.

☑ Which version of Git have you installed?

git --version
## git version 2.53.0

☑ Did you introduce yourself to Git? (Substitute in your details.)

git config --global user.name 'Your Name'
git config --global user.email 'your.email@smu.edu'
git config --global --list

☑ Did you register an account in GitHub?

Checklist (cont.)

We will make sure that everything is working properly with your R and GitHub setup next lecture.

For the rest of today’s lecture, I want to go over some very basic R concepts with demonstrations.

About R programming language


What is R?

To quote the R project website:

R is a free software environment for statistical computing and graphics. It compiles and runs on a wide variety of UNIX platforms, Windows and MacOS.

What does that mean?

  • R was created for the statistical and graphical work required by econometrics.
  • R has a vibrant, thriving online community. (stack overflow)
  • Plus it’s free and open source.

Why R?

  • Many alternatives:
    • STATA v.s. R v.s. Python v.s MATLAB v.s. Julia v.s. C/C++
    • No clear answer…
  • Advantages of R
    • R is free and open source (v.s. STATA and MATLAB)
    • Designed for data work. Favored by the academia, particular the statistics and econometrics community, which means most of the times you can apply most up-to-date methods with packages developed by the authors. (v.s. all others)
    • R is very flexible and powerful — adaptable to nearly any task, e.g., ’metrics, spatial data analysis, machine learning, web scraping, data cleaning, website building, teaching.
      • Well-developed environment. Rich sources of packages. (v.s. Julia.)
    • R imposes no limitations on your amount of observations, variables, memory, or processing power. (v.s. Stata)
    • If you put in the work, you will come away with a valuable and marketable tool.

Python?

Yes!

  • … but … path dependencies of econoemtricians and statisticians
  • You got to master one of them first
        … and you will be using both of them in the real world

Why R? (cont.)

and you have to learn one of them

Additional resources

Next lecture(s): R programming