scott cunningham

99.3K posts

scott cunningham banner
scott cunningham

scott cunningham

@causalinf

Economics professor paying it forward with 55 burgers, 55 fries, 55 tacos, 55 pies, 55 Cokes, 100 tater tots, 100 pizzas, 100 tenders, 100 meatballs

Waco, Texas Katılım Ekim 2011
5.6K Takip Edilen53.2K Takipçiler
Sabitlenmiş Tweet
scott cunningham
scott cunningham@causalinf·
I’ve been doing a series on Claude code for “quantitative social scientists” on my substack. It’s not much a series I guess as much as I am regularly documenting what I’m learning. It started mid Dec 2025 and will continue. causalinf.substack.com/s/claude-code
English
6
45
402
43K
scott cunningham retweetledi
Erik Brynjolfsson
Erik Brynjolfsson@erikbryn·
Hayek’s classic insight was that much economically relevant knowledge is dispersed, local, and often tacit. That is one reason decentralized markets have historically outperformed central planning. But AI can change those “knowledge physics” by making more of that knowledge codifiable, transferable, and usable at scale.
Erik Brynjolfsson tweet media
English
5
13
65
6.6K
scott cunningham retweetledi
Erik Brynjolfsson
Erik Brynjolfsson@erikbryn·
The @nytimes piece today by @ByrneEdsal13590 highlights a concern I share: “If we stay on the current path, the risk of extreme concentration — both economic and political — is very real.” In work with @zhitzig, we ask why AI may shift the balance between dispersed knowledge and centralized control.
Erik Brynjolfsson tweet media
English
8
61
225
102.9K
scott cunningham
scott cunningham@causalinf·
I wrote a substack today where I tried to explain my views about how complementary Claude code is to your work when you have real expertise in that specific area, and how sketchy it is when you don’t. causalinf.substack.com/p/claude-code-…
English
2
21
164
12.2K
scott cunningham
scott cunningham@causalinf·
@drStuartGilmour @ashwinmalshe You should do that. Then run it across all six packages in python, R and Stata. Create massive imbalance on ANY variable with this level of scale. Let it be 10^10 and then add in more covariates. Tell me what the package variation is. Then show what happens under many Xs
English
2
0
0
277
Stuart Gilmour
Stuart Gilmour@drStuartGilmour·
Some of the people commenting negatively on this were engaging positively with Cunningham’s package replication that makes the same classic error, just yesterday. This field has no concept of how to handle count data!
Michael Wiebe@michael_wiebe

Issue 4: Table 6 studies the effect of cluster size on patent quality, measured using citations. M21 claims to use log citations, but the code actually does log(y+0.00001). When I use log(y+1) or Poisson, the effect switches from positive to negative. 8/

English
3
0
4
15.3K
scott cunningham
scott cunningham@causalinf·
@drStuartGilmour @ashwinmalshe Just ran areg. The coefficient on poptotaltrend is zero and insignivant. The variable does nothing in plain regression. The r^2 is 0.44 coming basically from the municipality fixed effects. The problem I identified wasn’t a conceptual relationship bw homicide rates and pop.
English
1
0
0
252
Stuart Gilmour
Stuart Gilmour@drStuartGilmour·
@causalinf @ashwinmalshe It’s worth noting that even areg can’t handle that dataset. I’m not sure you can draw too many lessons about the packages from such a bad model
English
2
0
0
501
Andy Garin
Andy Garin@andy_garin·
@causalinf @PhillipsEcon Noted and appreciated. Just wanted to be clear that while I tend towards skepticism I am *not* trying to blindly dismiss these approaches wholesale.
English
1
0
2
54
scott cunningham
scott cunningham@causalinf·
Results from my Claude Code audit of six Callaway and Sant'Anna packages (two in python, two in R, two in Stata). Same specification, same dataset, same covariates, same estimator, almost never do they agree. open.substack.com/pub/causalinf/…
English
16
104
502
85.9K
scott cunningham
scott cunningham@causalinf·
@andy_garin @PhillipsEcon Yeah, I entirely missed all these. Sorry. I’m so out of the practice of reading these Twitter threads; it’s been three years since I’ve been on here and I forgot how I used to do it. I also get defensive on here i am realizing.
English
1
0
1
42
Andy Garin
Andy Garin@andy_garin·
@causalinf @PhillipsEcon If there’s a specific reason to believe matching on certain controls satisfies a CIA or conditional PT assumption, that’s great an justifies these approaches. But I know very few people who are convinced by “I matched on some controls I have so this is better”
English
2
0
0
43
Andy Garin
Andy Garin@andy_garin·
@causalinf @PhillipsEcon Sure, but this is very clearly not what I said. You don’t have to agree, but I want to be clear you are not correctly representing my point.
English
1
0
0
20
scott cunningham
scott cunningham@causalinf·
@ashwinmalshe @drStuartGilmour It’s definitely given me pause. We often master the econometrics, the dataset, and the syntax of our preferred language but not necessarily the underlying source code of the packages. The estimates *should* be identical across all packages and the variation was not trivial at all
English
2
0
1
497
Ashwin Malshé अश्विन
@causalinf @drStuartGilmour Btw I saw your post on LI and thought it was really eye-opening. When I switched to R more than a decade ago I used to compare Stata and R results. It was a real PITA but now with AI this is so convenient
English
1
0
1
428
scott cunningham retweetledi
joseph francis
joseph francis@joefrancis505·
This is important from @causalinf: Six Callaway and Sant'Anna DiD packages produce different results once covariates are introduced. "Package choice is a substantive decision that determines whether your ATT is 0.00, 0.45, 1.15, or 2.38..." substacktools.com/sharex/k15_2gyd
joseph francis tweet media
English
3
13
88
41K
scott cunningham
scott cunningham@causalinf·
@drStuartGilmour How does that explain the variation in packages? They are *all* using the same LHS, same RHS, same estimator. Fyi, there was no “right hand side” variables. Refamiliarize yourself with CS.
English
1
0
9
1K
Stuart Gilmour
Stuart Gilmour@drStuartGilmour·
@causalinf You put a rate on the lhs and then the population used to calculate the rate in the rhs. Also because the rate is small many of your predicted values and CIs would be negative. I know it’s not your paper but that’s bad practice.
English
1
0
0
1.2K
scott cunningham
scott cunningham@causalinf·
@andy_garin @PhillipsEcon To say you know ppl who say if unconditional PT is implausible and cannot therefore hold for CPT, and therefore they refuse to use did, well honestly that’s not my business. You shouldn’t use a research design you think is wrong, regardless. 3/n
English
1
0
0
28
scott cunningham
scott cunningham@causalinf·
@andy_garin @PhillipsEcon But if you’re saying you don’t believe that parallel trends can hold for CPT but not PT, I don’t know what to say bc that’s incorrect. It absolutely can. If you’re saying on vibes, you aren’t persuaded than that’s fine. But it’s trivial to give examples of this. 2/n
English
2
0
0
32
scott cunningham
scott cunningham@causalinf·
Highly recommend. 5 out of 5 on the peanut butter chocolate scoring system I use. I’ve never given a 5 before in my life too!
scott cunningham tweet media
English
1
1
20
2.5K