Adjust for variables and activate any biasing paths that result
Source:R/adjustment_sets.R
control_for.Rd
Adjust for variables and activate any biasing paths that result
Usage
control_for(.tdy_dag, var, as_factor = TRUE, activate_colliders = TRUE, ...)
adjust_for(.tdy_dag, var, as_factor = TRUE, activate_colliders = TRUE, ...)
ggdag_adjust(
.tdy_dag,
var = 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,
collider_lines = TRUE
)
Arguments
- .tdy_dag
input graph, an object of class
tidy_dagitty
ordagitty
- var
a character vector, the variable(s) to adjust for.
- as_factor
logical. Should the
adjusted
column be a factor?- activate_colliders
logical. Include colliders activated by adjustment?
- ...
additional arguments passed to
tidy_dagitty()
- node_size
size of DAG node
- text_size
size of DAG text
- label_size
size of label text
- text_col
color of DAG text
- label_col
color of label text
- node
logical. Should nodes be included in the DAG?
- stylized
logical. Should DAG nodes be stylized? If so, use
geom_dag_nodes
and if not usegeom_dag_point
- text
logical. Should text be included in the DAG?
- use_labels
a string. Variable to use for
geom_dag_label_repel()
. Default isNULL
.- collider_lines
logical. Should the plot show paths activated by adjusting for a collider?
Value
a tidy_dagitty
with a adjusted
column for adjusted
variables, as well as any biasing paths that arise, or a ggplot
Examples
dag <- dagify(m ~ a + b, x ~ a, y ~ b)
control_for(dag, var = "m")
#> # A DAG with 5 nodes and 4 edges
#> #
#> # Paths opened by conditioning on a collider: a <-> b, a <-> b, a <-> b, a <-> b
#> #
#> # A tibble: 11 × 10
#> name x y direction to xend yend circular collider_line
#> <chr> <dbl> <dbl> <fct> <chr> <dbl> <dbl> <lgl> <lgl>
#> 1 a -0.115 -1.27 -> m -0.794 0.00515 FALSE FALSE
#> 2 a -0.115 -1.27 -> x 0.480 -2.39 FALSE FALSE
#> 3 b -1.47 1.28 -> m -0.794 0.00515 FALSE FALSE
#> 4 b -1.47 1.28 -> y -2.06 2.39 FALSE FALSE
#> 5 m -0.794 0.00515 NA NA NA NA FALSE FALSE
#> 6 x 0.480 -2.39 NA NA NA NA FALSE FALSE
#> 7 y -2.06 2.39 NA NA NA NA FALSE FALSE
#> 8 a -0.115 -1.27 <-> b -1.47 1.28 NA TRUE
#> 9 a -0.115 -1.27 <-> b -1.47 1.28 NA TRUE
#> 10 a -0.115 -1.27 <-> b -1.47 1.28 NA TRUE
#> 11 a -0.115 -1.27 <-> b -1.47 1.28 NA TRUE
#> # ℹ 1 more variable: adjusted <fct>
ggdag_adjust(dag, var = "m")