Lesson 11

Binary by Binary Interactions

Big question

What does a product of two dummy variables add to the model?

Lesson progress

Complete checkpoints as you learn

0% complete0 checkpoint streak
Progress tracking available after sign-in. Sign in to save your work.
Big question
Concept
Activity
Quiz

Learning objectives

  • Explain binary by binary interactions in plain language.
  • Use chow test correctly in an interpretation.
  • Connect the lesson idea to a formula, graph, Python result, or real example.

Simple explanation

A binary-by-binary interaction lets one group difference vary depending on another yes/no condition.

Key terms

Chow test
A joint test for whether regression parameters differ across two groups.
Base group
The omitted category used as the comparison group for dummy coefficients.
Group-specific slope
A slope that differs across groups because a dummy interacts with a continuous variable.

Core formula

yi=β0+δ1Di+δ2Mi+δ3DiMi+uiy_i = \beta_0 + \delta_1D_i + \delta_2M_i + \delta_3D_iM_i + u_i

Use plain-language interpretation before algebra.

Example

MODULE7_WAGE_GROUPS_SYNTHETIC is an original Ceteris Lab synthetic teaching dataset for binary by binary interactions. It lets students practice dummy interaction without presenting fabricated real-world empirical findings.

Interactive visual

FourGroupInteractionTable: use the controls to code a group, choose a base group, and write one correct interpretation.

Original Module 7 visual for Binary by Binary Interactions.

wage_sample.csv

y variable

wage

The dependent variable. It is the outcome students want to explain.

x variable

education

The explanatory variable. It is used to describe changes in wage.

Live Python

Binary by Binary Interactions Python example

Binary by Binary Interactions Python example

Stdout

Run Python to see results here.

Status / stderr

Ready to run Python in your browser.

Line-by-line guide

  1. Line 1Load a Python library needed for data work or regression.
  2. Line 2Load a Python library needed for data work or regression.
  3. Line 4Load the dataset into a pandas DataFrame.
  4. Line 5Create or update a Python object used in the analysis.
  5. Line 6Add an intercept column to the regression design matrix.
  6. Line 7Display a result so students can inspect the output.
  7. Line 8Display a result so students can inspect the output.

Python walkthrough

  1. 1Load pandas and statsmodels so the workflow is reproducible.
  2. 2Read the installed Ceteris Lab synthetic CSV from the public data folder.
  3. 3Create or inspect dummy variables before estimating the model.
  4. 4Estimate OLS with an intercept and the selected regressors.
  5. 5Print coefficients or summaries, then interpret them as associations unless the design supports causality.

Live notebook

Run this lesson as a notebook

Open an editable notebook cell-by-cell, run Python in the browser, and download the `.ipynb` file for later.

Related dataset

MODULE7_WAGE_GROUPS_SYNTHETIC

Estimated time

25 to 40 min

Packages

pandas, numpy, statsmodels, patsy

Expected output

Printed Python results that can be compared with the lesson explanation.

Learning goals

  • Load and inspect MODULE7_WAGE_GROUPS_SYNTHETIC.
  • Run the Python cells connected to Binary by Binary Interactions.
  • Interpret the output using dummy variables and qualitative information.

Common errors

  • File not found: check that module7_wage_groups_synthetic.csv is installed or use the course data folder.
  • Package import error: use the browser notebook first, then download for local Jupyter if your local packages differ.
  • Column name error: compare your variable names with the dataset variables listed for this notebook.

Dataset path helper

import pandas as pd

df = pd.read_csv("/data/module-7/module7_wage_groups_synthetic.csv")
df.head()

Interactive activity

FourGroupInteractionTable

Binary by Binary Interactions

FourGroupInteractionTable: choose the coding rule, base group, or probability interpretation before reading the coefficient.

MODULE7_WAGE_GROUPS_SYNTHETIC

Inputs

Try it yourself

Write one plain-English sentence explaining the main idea from this lesson.

Common mistakes

Check these before you move on.

A regression coefficient describes a pattern unless the assumptions or research design support a causal interpretation.

Quick quiz

Which interpretation is most careful for Binary by Binary Interactions?

Quick quiz

What should students check before trusting the result in Binary by Binary Interactions?

Quick quiz

Why is JTRAIN a reasonable practice dataset here?

Key takeaway

Binary by Binary Interactions helps students convert qualitative information into transparent, testable regression comparisons.