Skip to contents

This generic function converts an object into a vlmc.

Usage

# S3 method for ctx_tree_cpp
as_vlmc(x, alpha, cutoff, ...)

Arguments

x

an object to convert into a vlmc.

alpha

cut off parameter applied during the conversion, quantile scale (if specified)

cutoff

cut off parameter applied during the conversion, native scale (if specified)

...

additional arguments for conversion functions.

Value

a vlmc

Details

This function converts a context tree into a VLMC. If alpha or cutoff is specified, it is used to reduce the complexity of the tree as in a direct call to vlmc() (prune()).

Examples

## conversion from a context tree
dts <- c(0, 1, 1, 1, 0, 0, 1, 0, 1, 0)
dts_ctree <- ctx_tree(dts, min_size = 1, max_depth = 3, backend = "C++")
draw(dts_ctree)
#> *
#> +-- 0
#> |   +-- 0
#> |   |   '-- 1
#> |   '-- 1
#> |       +-- 0
#> |       '-- 1
#> '-- 1
#>     +-- 0
#>     |   +-- 0
#>     |   '-- 1
#>     '-- 1
#>         +-- 0
#>         '-- 1
dts_vlmc <- as_vlmc(dts_ctree)
class(dts_vlmc)
#> [1] "vlmc_cpp"     "vlmc"         "ctx_tree_cpp" "ctx_tree"    
draw(dts_vlmc)
#> * (0.5, 0.5)
#> +-- 0 (0.25, 0.75)
#> |   +-- 0 (0, 1)
#> |   |   '-- 1 (0, 1)
#> |   '-- 1 (0.5, 0.5)
#> |       +-- 0 (0, 1)
#> |       '-- 1 (1, 0)
#> '-- 1 (0.6, 0.4)
#>     +-- 0 (0.6667, 0.3333)
#>     |   +-- 0 (1, 0)
#>     |   '-- 1 (1, 0)
#>     '-- 1 (0.5, 0.5)
#>         +-- 0 (0, 1)
#>         '-- 1 (1, 0)