The general schedule for the course is below. For code, please see this
dropbox for a static view. During the course itself, we’ll give you
share access so that you can update files as things change. Please run this script
in R to install the packages you will need for the course before day
1.
For the course, we’ll also use a number of common data sets which you
can download (and put into a data folder) here.
Lecture recordings are available on this
unlisted youtube playlist.
Overview: We discuss just what is SEM. Along the way
we’ll discuss it’s origins, give a general example of moving from a
traditional ANOVA-esque framework and to observational data, and finally
discuss how to build a well-justified causal model. Causality will be
central, and we won’t pull any punches! We’ll end the day by starting to
talk about how to fit SEMs using likelihood using covariance-based
estimation with likelihood.
Lectures:
What is SEM? A Practical and
Historical Overview
Anatomy of SEM
Building
Multivariate Causal Models, code
Model
Building
Jon causality - alternate explanation
Readings:
Arif
and MacNeil 2022 (causal models), Whalen
et al. 2013 (example), Lefcheck
& Duffy 2015 (example), Lefcheck
Model Justification (example)
Optional Reading: Matsueda 2012 (history), Pearl 2012a (history of causality), Grace and Irvine 2019 (building causal models for SEM), Grace 2010 (overview), Bellemare et al. 2022 The Paper of How
Etherpad: http://etherpad.wikimedia.org/p/sem-eeb-intro-2023
Jamboards: Jamboard
Overview: We move beyond covariance based techniques
into local estimation techniques that unite the graph theoretic approach
with SEM via the piecewiseSEM
package.
Lectures:
Path
Coefficients
Breaking down
path diagrams
Local
estimation: an introduction, code
Readings: piecewiseSEM
vignette, Shipley
2009, Shipley
2013, Lefcheck
2016, Shipley
and Douma 2020
Book Chapter: https://jslefche.github.io/sem_book/local-estimation.html
Etherpad: http://etherpad.wikimedia.org/p/sem-eeb-piecewise-2023
Code: Riseup
Pad
Overview: We’ll discuss covariance-based estimation,
how we evaluate an SEM and what we report. We’ll end the day (if we have
time) exploring the concept of latent variables - variables for which we
do not actually have a measured variable, but for which we have one or
more indicators.
Lectures: Engines of SEM:
Covariance-Based Estimation, code
What
does it mean to evaluate a multivariate hypothesis?, code, fitted_lavaan.R
Latent Variable
models, code
Readings: Grace
and Bollen 2005
Book Chapter: https://jslefche.github.io/sem_book/global-estimation.html
Etherpad: http://etherpad.wikimedia.org/p/sem-eeb-covariance-2023
Jamboards: Scratch
Jamboard
Code: Riseup
Pad
Overview: This day varies quite a bit, depending on
the current class. It’s a potpurri of more advances topics, not all of
which will be covered.
Lectures: Categorical Variables
in SEM, data, code
Standardized
Coefficients; data, code
Extensions
to local estimation, data, code
Multigroup
Modelling; code
Readings: Bowen
et al. 2017, causal
model structure and random effects
Etherpad: http://etherpad.wikimedia.org/p/sem-eeb-advanced-2023
Code: Riseup Pad:
Latent Variables
Riseup Pad:
Piecewise
Overview: In the morning, we’ll have an open lab.
Students will work on their own data and projects with an aim to
building a 2-3 slide powerpoint presentation detailing 1. The
problem/system, 2. The model they built, and 3. The Final result and any
challenges. We’ll present these in the afternoon, hopefully in a
convivial atmosphere, after a brief primer on warming up for a talk you
are nervous about!
Lectures: How to reject a paper that uses
SEM
Etherpad: http://etherpad.wikimedia.org/p/sem-eeb-lab-2023