Skip to contents

This generic function converts an object into a vlmc.

Usage

# S3 method for class '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)