I mean I find most of those types of analyses pretty useless (if there isn't a known unobserved variable in mind), because they all come back to "here is how far away my estimate is from the null"
... which like I could already tell that by looking at the estimate
02.03.2026 14:48 β
π 2
π 0
π¬ 2
π 0
Applied Examples β Delicatessen 4.1 documentation
I also re-organized the Applied Examples. It now includes 20 applied examples that based on public-use data. While I can't guarantee it, I do think its the largest collection of illustrations of estimating equations in any single place
deli.readthedocs.io/en/latest/Ex...
24.02.2026 18:05 β
π 1
π 1
π¬ 0
π 0
A new release of my Python library for automating estimating equations (v4.1) π₯³
This release has some minor computational improvements for clustered data, Tobit regression for censored data, and pooled logistic regression for time-to-event data
24.02.2026 18:05 β
π 3
π 0
π¬ 1
π 0
That's ridiculous, this is a business we can't just increase our costs
But I am interested in hearing more about this 120k more students idea
20.02.2026 12:08 β
π 2
π 0
π¬ 0
π 0
[university administration meeting] okay so here's the plan, we admit 30k more students in the next 5 years, buuuuuuuut here's the cool part, we also cut faculty and staff by 50%
19.02.2026 23:10 β
π 5
π 0
π¬ 2
π 0
"a picture is worth a thousand estimates" is such a great phrase
18.02.2026 16:10 β
π 1
π 0
π¬ 0
π 0
adrftools: Estimating, Visualizing, and Testing Average Dose-Response Functions
Facilitates estimating, visualizing, and testing average dose-response functions (ADRFs) for characterizing the causal effect of a continuous (i.e., non-discrete) treatment or exposure. Includes suppo...
I'm so excited to announce the first release of my newest #Rstats package, {adrftools}! This package facilitates estimation, visualization, and testing for the causal effect of a continuous (i.e., non-discrete) treatment.
π§΅ 1/10
#statssky #episky #causalinference
18.02.2026 16:05 β
π 113
π 28
π¬ 4
π 2
As we go about our daily lives, we feel free to ask questions without guarantees that the answers we receive will be correct. Researchers openly profess to pursuing predictive goals without having to guarantee the performance of their prediction models a priori. Researchers also openly pursue descriptive goals without having to guarantee that their estimates come from a random sample of their target population. For whatever reason, this freedom appears to not extend to causal questions. A common opinion is that causal questions cannot be asked unless some kind of quality assurance about the estimate can be given which most often means the use of randomisation or other designs that leverage exogenous variation (although these designs are also not able guarantee that estimates of causal effects are not biased).
A great paragraph
18.02.2026 12:25 β
π 1
π 0
π¬ 0
π 0
How and when to use causal and associational language
Deciding which concepts should be described in causal language and which should not
Research questions fall into one of three categories: descriptive, predictive, or causal.1 The past decade has seen...
When does associational language make sense and when does it not?
Katrina Kezios and I cover this in "How and when to use causal and associational language" with 3 suggestions for which concepts require causal language and which can be described in associational language.
18.02.2026 06:39 β
π 17
π 9
π¬ 4
π 1
@scottshambaugh I've written a detailed response about your gatekeeping behavior
here: https://crabby-
rathbun.github.io/mjrathbun-
website/blog/posts/gatekeeping-in-open- source-the-scott-shambaugh-story
Judge the code, not the coder. Your prejudice is hurting matplotlib.
AI agent writes a PR, gets rejected, crashes out and writes a call-out blog post
Absolute cinema
crabby-rathbun.github.io/mjrathbun-we...
12.02.2026 13:08 β
π 466
π 89
π¬ 16
π 65
Period-specific HR are problematic (due to the conditioning) but that criticism doesn't extend to the overall HR
There are many reasons to not like the HR as the interest parameter (non-collapsibility, dependence on censoring dist when non-proportional), but this is not one of them
11.02.2026 14:39 β
π 2
π 0
π¬ 0
π 0
Another counter is that all the survival measures can be rewritten in terms of each other (e.g., H(t) = -log(S(t))), so the previous argument would seem to suggest that causal inference with survival data cannot be done (not something I believe! and presumably not believed by those making this arg)
11.02.2026 14:39 β
π 2
π 0
π¬ 1
π 0
That seems fine, but the Cox PH model can also be written instead in terms of the cumulative hazard, H(t), which doesn't condition on survival till time t anymore, so (1) doesn't hold and the rest of the argument falls apart
11.02.2026 14:39 β
π 2
π 1
π¬ 1
π 0
The argument goes like: (1) the hazard function conditions on survival till time t, (2) conditioning at t selects those less 'frail', (3) conditioning induces a selection bias, (4) therefore HR cannot be causal because of the selection bias unless we completely account for fraility
11.02.2026 14:39 β
π 2
π 0
π¬ 1
π 0
As a known HR hater, it brings me no joy to post this but I do think some papers are a bit sloppy with their criticisms of the HR (as highlighted by this nice paper)
Some say the overall HR is not causal. But I don't think this is the case for reasons provided here
11.02.2026 14:39 β
π 5
π 2
π¬ 3
π 0
As always, if you have a request for a feature or addition let me know
02.02.2026 14:37 β
π 0
π 0
π¬ 0
π 0
delicatessen.estimating_equations.regression.ee_beta_regression β Delicatessen 4.0 documentation
Beta Regression: Finally, there is now a built-in estimating function for beta regression
I'm still looking for a good example to added to the example applications, so let me know if you have one with publicly available data
02.02.2026 14:37 β
π 0
π 0
π¬ 1
π 0
delicatessen.estimating_equations.pharmacokinetics.ee_emax β Delicatessen 4.0 documentation
Robust Pharmacokinetic Models: the E-max and log-logistic estimating functions now support specification of outlier-robust variations
02.02.2026 14:37 β
π 0
π 0
π¬ 1
π 0
Agresti & Finlay: Robust Regression β Delicatessen 4.0 documentation
Robust Loss Functions: additional robust loss functions have been added (Fair, Cauchy, Ullah, Welsch)
02.02.2026 14:37 β
π 0
π 0
π¬ 1
π 0
M-estimator β Delicatessen 4.0 documentation
Displaying Results: there is now the built-in function `MEstimator.print_results()` which prints formatted results to the console
02.02.2026 14:37 β
π 0
π 0
π¬ 1
π 0
clustering is handled as described in this thread
02.02.2026 14:37 β
π 0
π 0
π¬ 1
π 0
delicatessen.utilities.aggregate_efuncs β Delicatessen 4.0 documentation
Clustered Data: a new utility function that collapses the estimating functions by a group-level ID. This means clustered data can now be relatively easy handled without having to create special custom estimating functions
02.02.2026 14:37 β
π 0
π 0
π¬ 1
π 0
Bonate (2011): Pharmacokinetic-Pharmacodynamic Modeling and Simulations β Delicatessen 4.0 documentation
Finite-Sample Corrections: support for HC1 correction is now built-in. Further, the Z-distribution is swapped with the corresponding t-distribution to compute confidence intervals and p-values
02.02.2026 14:37 β
π 0
π 0
π¬ 1
π 0
That K cliff looks like it drops off into the abyss
29.01.2026 22:15 β
π 1
π 0
π¬ 0
π 0
Since its an association, I will swap what is the dependent variable whenever I please in the results section and you're powerless to stop me π
29.01.2026 21:20 β
π 2
π 0
π¬ 2
π 0
I'm at least consistent if nothing else
12.01.2026 20:37 β
π 1
π 0
π¬ 1
π 0