Skip to contents

Get possible data types

Usage

get_data_families(
  model,
  drop_impossible = TRUE,
  drop_all_NA = TRUE,
  mapping_only = FALSE
)

Arguments

model

A causal_model. A model object generated by make_model.

drop_impossible

Logical. Whether to drop data that is impossible given model restrictions. Defaults to `TRUE`.

drop_all_NA

Logical. Whether to drop row of all `NA`s. Defaults to `TRUE`

mapping_only

Logical. Whether to return data mapping matrix only. Defaults to `FALSE`.

Value

Returns indices and ambiguity matrix

Examples

# \donttest{
CausalQueries:::get_data_families(model = make_model('X->Y'))
#>      event strategy X0Y0 X1Y0 X0Y1 X1Y1
#> X0Y0  X0Y0       XY    1    0    0    0
#> X1Y0  X1Y0       XY    0    1    0    0
#> X0Y1  X0Y1       XY    0    0    1    0
#> X1Y1  X1Y1       XY    0    0    0    1
#> Y0      Y0        Y    1    1    0    0
#> Y1      Y1        Y    0    0    1    1
#> X0      X0        X    1    0    1    0
#> X1      X1        X    0    1    0    1
CausalQueries:::get_data_families(model = make_model('X->Y'),
                                  mapping_only = TRUE)
#>      X0Y0 X1Y0 X0Y1 X1Y1
#> X0Y0    1    0    0    0
#> X1Y0    0    1    0    0
#> X0Y1    0    0    1    0
#> X1Y1    0    0    0    1
#> Y0      1    1    0    0
#> Y1      0    0    1    1
#> X0      1    0    1    0
#> X1      0    1    0    1
CausalQueries:::get_data_families(model = make_model('X-> M -> Y'))
#>         event strategy X0M0Y0 X1M0Y0 X0M1Y0 X1M1Y0 X0M0Y1 X1M0Y1 X0M1Y1 X1M1Y1
#> X0M0Y0 X0M0Y0      XMY      1      0      0      0      0      0      0      0
#> X1M0Y0 X1M0Y0      XMY      0      1      0      0      0      0      0      0
#> X0M1Y0 X0M1Y0      XMY      0      0      1      0      0      0      0      0
#> X1M1Y0 X1M1Y0      XMY      0      0      0      1      0      0      0      0
#> X0M0Y1 X0M0Y1      XMY      0      0      0      0      1      0      0      0
#> X1M0Y1 X1M0Y1      XMY      0      0      0      0      0      1      0      0
#> X0M1Y1 X0M1Y1      XMY      0      0      0      0      0      0      1      0
#> X1M1Y1 X1M1Y1      XMY      0      0      0      0      0      0      0      1
#> M0Y0     M0Y0       MY      1      1      0      0      0      0      0      0
#> M1Y0     M1Y0       MY      0      0      1      1      0      0      0      0
#> M0Y1     M0Y1       MY      0      0      0      0      1      1      0      0
#> M1Y1     M1Y1       MY      0      0      0      0      0      0      1      1
#> X0Y0     X0Y0       XY      1      0      1      0      0      0      0      0
#> X1Y0     X1Y0       XY      0      1      0      1      0      0      0      0
#> X0Y1     X0Y1       XY      0      0      0      0      1      0      1      0
#> X1Y1     X1Y1       XY      0      0      0      0      0      1      0      1
#> X0M0     X0M0       XM      1      0      0      0      1      0      0      0
#> X1M0     X1M0       XM      0      1      0      0      0      1      0      0
#> X0M1     X0M1       XM      0      0      1      0      0      0      1      0
#> X1M1     X1M1       XM      0      0      0      1      0      0      0      1
#> Y0         Y0        Y      1      1      1      1      0      0      0      0
#> Y1         Y1        Y      0      0      0      0      1      1      1      1
#> M0         M0        M      1      1      0      0      1      1      0      0
#> M1         M1        M      0      0      1      1      0      0      1      1
#> X0         X0        X      1      0      1      0      1      0      1      0
#> X1         X1        X      0      1      0      1      0      1      0      1

# }