Choosing a causal discovery method
Which causal discovery method suits your data: a decision sketch, the assumptions of each family (PC, FCI, GES, BOSS, GRaSP, LiNGAM, SCORE), and why comparing two methods beats trusting one.
Start with three questions
Every method makes assumptions. The right one is the method whose assumptions your data comes closest to. Three questions decide most cases:
- Could an important cause be missing from the table? If yes, use a method that allows for hidden causes.
- Are the relationships roughly linear? Straight-line relationships suit the classical methods; curved ones need methods built for them.
- Is the noise bell-shaped? If the variation around the relationships is skewed or heavy-tailed, that asymmetry can reveal directions.
The families at a glance
| Family | Methods in UCMT Labs | Assumes | Returns |
|---|---|---|---|
| Constraint-based | PC, FCI | Independence tests that fit the data (Fisher-z: roughly linear, bell-shaped noise) | PC: a graph with some links undirected. FCI: also marks where a hidden cause may act |
| Score-based | GES, BOSS, GRaSP | A score (BIC) that fits the data; no hidden common causes | A graph with some links undirected |
| Ordering-based | SCORE, DAS, NoGAM | Non-linear relationships with additive noise | A fully directed graph |
| Continuous optimisation | DAGMA (linear) | Linear relationships | A fully directed graph with weights |
| Non-Gaussian | ICA-LiNGAM, DirectLiNGAM | Linear relationships, noise that is not bell-shaped, no hidden common causes | A fully directed graph with weights |
| UCMT models | UCMT v2 Global, UCMT V3 (experimental), UCMT V4 (experimental) | UCMT Labs' own models | A graph, with built-in checks reported after the run |
Each established method has its own guide: PC, FCI, GES, BOSS and GRaSP, LiNGAM.
How to check your data
- Linear or not: plot a few pairs you know are related. Curves, thresholds or saturation mean non-linear.
- Bell-shaped or not: look at a histogram of a variable after removing its obvious trend. Long tails or a strong skew mean non-Gaussian.
- Hidden causes: list what drives your outcome in reality. Anything important that is not a column is a hidden cause.
- Size: methods need more rows as columns grow. UCMT Labs warns when a dataset has fewer than 500 rows.
UCMT Labs runs a data check on upload that looks at these properties and suggests a starting method and a comparison method, with the reasons. It is a suggestion, not a verdict: you can always choose another method.
Compare, don't trust one method
No method is right on every dataset, and each one fails in its own way. Run two or more methods with different assumptions on the same data:
- Links that every method finds are the firmest candidates.
- Links only one method finds depend on that method's assumptions; check them before acting.
- Links whose direction flips between methods need knowledge or an experiment to settle.
In UCMT Labs, Compare runs several methods side by side on every plan, and consensus discovery (Professional and Enterprise) keeps the links enough methods agree on. Agreement between methods makes a link more credible; it does not prove it.
A practical routine
- Clean the table: one row per observation, numbers only, no IDs.
- Run the suggested starting method.
- Run one method from a different family.
- Keep the links both find; list the disputed ones.
- Check the disputed ones against what you know, or plan a small test.
- Ask your what-if questions on the graph you trust.