Implements Penalized Fast Causal Inference (PFCI), a two-stage
causal structure learning procedure for high-dimensional settings with
potential latent variables and selection bias. In the first stage,
neighborhood selection via the Lasso constructs a sparse undirected
skeleton. In the second stage, the Fast Causal Inference (FCI) algorithm
orients edges on this reduced graph, producing a Partial Ancestral Graph
(PAG) that accounts for latent confounders. The method is consistent
under sparsity assumptions and substantially faster than standard FCI
and RFCI in high dimensions. See Pal, Ghosh, and Yang (2025)
2026-03-14
PFCI implements Penalized Fast Causal Inference (PFCI), a scalable two-stage procedure for learning graphical structures in high-dimensional settings with potential latent variables and selection bias.
The method combines:
This enables computationally efficient structure learning while preserving theoretical guarantees under sparsity assumptions.
Install from CRAN:
install.packages("PFCI")
The development version is available on GitHub:
devtools::install_github("djghosh1123/PFCI")
Core functionality requires pcalg and graph from Bioconductor:
install.packages("BiocManager")
BiocManager::install(c("pcalg", "graph", "RBGL", "Rgraphviz"))
library(PFCI)
sim <- simulate_pfci_toy(p = 100, n = 100, edge_prob = 0.02, seed = 1)
fit <- pfci_fit(sim$X, alpha = 0.05)
met <- pfci_metrics(sim, fit)
met
plot_pag(fit)
Pal, S., Ghosh, D., & Yang, S. (2025). Penalized FCI for Causal Structure Learning in a Sparse DAG for Biomarker Discovery in Parkinson’s Disease. Annals of Applied Statistics. doi:10.48550/arXiv.2507.00173