John Sakaluk
johnsakaluk.bsky.social
John Sakaluk
@johnsakaluk.bsky.social
He/him/his. Associate Professor at Western University.
Work: #rstats, #psychometrics, #dyadic data, #MetaAnalysis, #closerelationships, Sexuality
Fun: All things cured, fermented, roasted, seared, smoked, shaken, stirred, and swizzled.
You'd probably want to tinker further (e.g., could add optionality re: parameter type), but I think the basics are working with this toy example. Lemme know if something like this would be helpful and I can send the wrapper/exemplar along to you.
August 21, 2025 at 8:40 PM
The attempt I remember enjoying most was when they tried to riff on the attachment security system, and then traditional TMT responses were just considered among the available responses to threat. Of course, that lit has a host of problems too...

adultattachment.faculty.ucdavis.edu/wp-content/u...
July 24, 2025 at 1:33 PM
I think this would add to your list of reasons it persisted. There was a lot of the Baumeister-like "you don't have the special sauce/je ne sais quoi if you can't find TMT effects" in this lit/amongst its Stans, and some critical mass of power-brokers appeared to accept that argument.
July 24, 2025 at 1:33 PM
I went down a wormhole re: usability testing recently, and once I surfaced, it really struck me how many of these things that will fix science (incl. some of my own) go entirely untested/remain premised entirely on armchair argumentation of their impact
July 15, 2025 at 2:40 PM
One of my favourite examples of this is estimating/testing simple slopes in interaction models.

When I was a student, your best best was to use @krispreacher.bsky.social' app: www.quantpsy.org/interact/mlr...

You'd tinker with SPSS/SAS options to spit out values for it, and smash "submit".
July 11, 2025 at 2:38 PM
Oh, and one more thing: I'm putting together a grant built around (in part) collaborative software design approaches. If you use/are interested in dyadic SEM/dySEM, and might want to be one of the contributing labs (e.g., for training, function testing, providing feedback), get in touch!
July 10, 2025 at 2:44 PM
We've also programmed some boutique functions to help with occasionally annoying tasks, like matching parameter labels to Langrange multipler tests, so that you can quickly identify what items/measurement model parameters have detectable noninvariance:
July 10, 2025 at 2:44 PM
Whatever the model(s), the process of using dySEM is very similar: (1) scrape your variables, (2) choose/apply a model scripter; (3) use lavaan to fit your model(s); (4) request your reproducible table or path diagram of output
July 10, 2025 at 2:44 PM
And lastly, the Latent APIM: it's the Actor-Partner Interdependence Model, but free of measurement error! dySEM makes it easy to specify different variations (e.g., equated actor and/or partner effects) and calculate dyadic patterns ("k"). Walk-through: jsakaluk.github.io/dySEM/articl...
July 10, 2025 at 2:44 PM
The Multiple Correlated Dyadic Factors Model (M-CDFM) is like the CDFM, just more(er). When researchers use a multi-factor measure to collect dyadic data, this is probably the model (for "dyadic CFA") that they have in mind. Dyadic invariance walk-through: jsakaluk.github.io/dySEM/articl...
July 10, 2025 at 2:44 PM
The Correlated Dyadic Factors Model (CDFM) is essentially one half (latent-X or latent-Y) of the latent APIM. If you've got one construct in mind, and think its reasonable to represent as each partner having an LV, it's your model. Dyadic invariance walk-through: jsakaluk.github.io/dySEM/articl...
July 10, 2025 at 2:44 PM
🧵
Very excited (w/ @omarjcamanto.bsky.social) to share our preprint tutorial for using our R 📦 dySEM for #dyadic data analysis with latent variables, in cross-sectional data sets.

This paper has been literal years in the making, and provides three distinct tutorials.

osf.io/preprints/ps...
July 10, 2025 at 2:44 PM
(BTW: never heard the "salsa pattern" terminology before--it's incredible--is there a go-to reference for that?)
June 20, 2025 at 7:18 PM
My Phd student Noah is recruiting Trans* and Non-Binary folks to participate in a survey study on well-being (uwo.eu.qualtrics.com/jfe/form/SV_...). Check it out if relevant and of interest to you, and appreciate any signal boosting in your networks!
March 28, 2025 at 4:53 PM
These time series figures are *wild*:
March 27, 2025 at 3:13 PM
13. outputConstraintTab() streamlines this to a one-liner. Feed it the constrained model w/ rejected level of invariance, and it will do all of this behind the scenes, and return an (immediately interpretable) tibble of Langrange multiplier tests, to identify specific sources of noninvariance.
January 8, 2025 at 8:00 PM
12. Normally, addressing this in {lavaan} is a rigmarole. You’d first use lavTestScore() to get the Lagrange multiplier tests of each constraint, then need to use partable() to decipher cryptic lhs and rhs parameter labels for interpretation of noninvariance. It's... not pretty.
January 8, 2025 at 8:00 PM
6. outputInvarCompTab() allows traditional frequentist nested model comparisons in dyadic invariance testing, but sequenced from most parsimonious model (residual + intercept + loading invariant) to least (merely configurally invariant). A quick explanation of “why?”:
January 8, 2025 at 8:00 PM
1. Happy to share that ver. 1.1.1 of the dySEM 📦 for #dyadic SEM in #rstats is officially available on CRAN: cran.r-project.org/web/packages....

Huge credit goes to @omarjcamanto.bsky.social ; Omar has led a large overhaul of the “outputters” based on feedback from our workshop at #IARR2024
January 8, 2025 at 8:00 PM
November 20, 2024 at 3:54 PM
Mine is a bit verbose/I'm still exploring options, but this feels mostly right for me, at this time.
November 13, 2024 at 7:59 PM
In a day (week/month) that has been workflow death by a million little academic paper-cuts, this has *absolutely* been the highlight of my day.

Forever the "right kind of sinner", and the "invincible winner" of peer-review: www.youtube.com/watch?v=paV1...
October 2, 2024 at 6:46 PM
2024 is proving to be a year of firsts. Fingers crossed that the CRAN deities are kind to our first submission!
January 26, 2024 at 7:24 PM
It gets messy w/ conceptual replications. I think could be reasonable language if either (a) it's awfully darn close in methodological fidelity; (b) reasonably close for historical design that could never be replicated again (e.g., election); or (c) if original author reviewed and demanded change
December 13, 2023 at 7:23 PM
Co-pilot is trying to bring you to a higher state of wisdom:

Do not try and find the simOneFactor function; that's impossible. Instead, only try to realize the truth… there is no simOneFactor function. Then you'll see that it is not the one factor solution that is simulated, it is only yourself.
November 1, 2023 at 1:04 PM