Learn R Programming

cdgd

The package cdgd implements the causal decompositions of group disparities in Yu and Elwert (2025).

Installation

The latest release of the package can be installed through CRAN.

install.packages("cdgd")

The current development version can be installed from source using devtools.

devtools::install_github("ang-yu/cdgd")

Examples

library(cdgd)  

# load the simulated example data
data(exp_data)
head(exp_data)
#>       outcome treatment  confounder          Q group_a
#> 748 1.4608165         1  0.26306864  0.6748330       0
#> 221 0.4777308         0  1.30296394  0.5920512       1
#> 24  0.8760129         1 -1.49971226  1.6294327       1
#> 497 0.4131192         1 -1.17219619 -0.8391873       1
#> 249 2.0483222         1  1.71790879  2.9546966       1
#> 547 0.1912013         0 -0.02438458 -0.3704544       0

Use cdgd0_ml, cdgd0_pa, or cdgd0_manual for unconditional decomposition

results0 <- cdgd0_pa(Y="outcome",D="treatment",G="group_a",X=c("confounder","Q"),data=exp_data,alpha=0.05)

round(results0$results, 4)
#>              point     se p_value CI_lower CI_upper
#> total       0.2675 0.0390  0.0000   0.1911   0.3439
#> baseline    0.0421 0.0131  0.0013   0.0164   0.0678
#> prevalence  0.2579 0.0337  0.0000   0.1919   0.3240
#> effect     -0.1372 0.0209  0.0000  -0.1781  -0.0963
#> selection   0.1047 0.0150  0.0000   0.0754   0.1340

Use cdgd1_ml, cdgd1_pa, or cdgd1_manual for conditional decomposition

results1 <- cdgd1_pa(Y="outcome",D="treatment",G="group_a",X="confounder",Q="Q",data=exp_data,alpha=0.05)

round(results1, 4)
#>                                 point     se p_value CI_lower CI_upper
#> total                          0.2675 0.0390  0.0000   0.1911   0.3439
#> baseline                       0.0421 0.0131  0.0013   0.0164   0.0678
#> conditional prevalence         0.2032 0.0371  0.0000   0.1305   0.2760
#> conditional effect            -0.1644 0.0220  0.0000  -0.2076  -0.1212
#> conditional selection          0.0875 0.0143  0.0000   0.0595   0.1156
#> Q distribution                 0.0990 0.0188  0.0000   0.0621   0.1359
#> conditional Jackson reduction  0.2362 0.0378  0.0000   0.1621   0.3103

Copy Link

Version

Install

install.packages('cdgd')

Monthly Downloads

166

Version

1.0.1

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Ang Yu

Last Published

November 24th, 2025

Functions in cdgd (1.0.1)

cdgd1_ml

Perform conditional decomposition via machine learning
cdgd0_manual

Perform unconditional decomposition with nuisance functions estimated beforehand
exp_data

Simulated example data
cdgd1_manual

Perform conditional decomposition with nuisance functions estimated beforehand
cdgd0_ml

Perform unconditional decomposition via machine learning
cdgd1_pa

Perform conditional decomposition via parametric models
cdgd0_pa

Perform unconditional decomposition via parametric models