See dagitty::adjustmentSets() for details.

dag_adjustment_sets(.tdy_dag, exposure = NULL, outcome = NULL, ...)

.tdy_dag,
exposure = NULL,
outcome = NULL,
...,
node_size = 16,
text_size = 3.88,
label_size = text_size,
text_col = "white",
label_col = text_col,
node = TRUE,
stylized = FALSE,
text = TRUE,
use_labels = NULL,
expand_x = expansion(c(0.25, 0.25)),
expand_y = expansion(c(0.2, 0.2))
)

## Arguments

.tdy_dag input graph, an object of class tidy_dagitty or dagitty a character vector, the exposure variable. Default is NULL, in which case it will be determined from the DAG. a character vector, the outcome variable. Default is NULL, in which case it will be determined from the DAG. additional arguments to adjustmentSets logical. Show paths blocked by adjustment? size of DAG node size of DAG text size of label text color of DAG text color of label text logical. Should nodes be included in the DAG? logical. Should DAG nodes be stylized? If so, use geom_dag_nodes and if not use geom_dag_point logical. Should text be included in the DAG? a string. Variable to use for geom_dag_repel_label(). Default is NULL. Vector of range expansion constants used to add some padding around the data, to ensure that they are placed some distance away from the axes. Use the convenience function ggplot2::expansion() to generate the values for the expand argument. Vector of range expansion constants used to add some padding around the data, to ensure that they are placed some distance away from the axes. Use the convenience function ggplot2::expansion() to generate the values for the expand argument.

## Value

a tidy_dagitty with an adjusted column and set column, indicating adjustment status and DAG ID, respectively, for the adjustment sets or a ggplot

## Examples

dag <- dagify(y ~ x + z2 + w2 + w1,
x ~ z1 + w1,
z1 ~ w1 + v,
z2 ~ w2 + v,
w1 ~~ w2,
exposure = "x",
outcome = "y")

tidy_dagitty(dag) %>% dag_adjustment_sets()#> # A DAG with 7 nodes and 33 edges
#> #
#> # Exposure: x
#> # Outcome: y
#> #
#> # A tibble: 36 x 10
#>    name      x     y direction to     xend  yend circular adjusted   set
#>    <chr> <dbl> <dbl> <fct>     <chr> <dbl> <dbl> <lgl>    <chr>      <chr>
#>  1 v      7.21  14.3 ->        z1     6.29  15.4 FALSE    unadjusted {w1, w2, z…
#>  2 v      7.21  14.3 ->        z2     6.20  13.4 FALSE    unadjusted {w1, w2, z…
#>  3 w1     4.94  14.9 ->        x      5.25  15.7 FALSE    adjusted   {w1, w2, z…
#>  4 w1     4.94  14.9 ->        y      5.32  14.2 FALSE    adjusted   {w1, w2, z…
#>  5 w1     4.94  14.9 ->        z1     6.29  15.4 FALSE    adjusted   {w1, w2, z…
#>  6 w1     4.94  14.9 <->       w2     4.92  13.4 FALSE    adjusted   {w1, w2, z…
#>  7 w2     4.92  13.4 ->        y      5.32  14.2 FALSE    adjusted   {w1, w2, z…
#>  8 w2     4.92  13.4 ->        z2     6.20  13.4 FALSE    adjusted   {w1, w2, z…
#>  9 x      5.25  15.7 ->        y      5.32  14.2 FALSE    unadjusted {w1, w2, z…
#> 10 z1     6.29  15.4 ->        x      5.25  15.7 FALSE    unadjusted {w1, w2, z…
#> # … with 26 more rows