Skip to contents

Generate draws from priors for model terms.

Usage

# S3 method for class 'bage_prior_ar'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_known'
generate(x, n_element = 20, n_draw = 25, ...)

# S3 method for class 'bage_prior_lin'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_linar'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_linex'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_norm'
generate(x, n_element = 20, n_draw = 25, ...)

# S3 method for class 'bage_prior_normfixed'
generate(x, n_element = 20, n_draw = 25, ...)

# S3 method for class 'bage_prior_rwrandom'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rwrandomseasfix'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rwrandomseasvary'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rwzero'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rwzeroseasfix'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rwzeroseasvary'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rw2random'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rw2randomseasfix'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rw2randomseasvary'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rw2zero'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rw2zeroseasfix'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_rw2zeroseasvary'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_spline'
generate(x, n_along = 20, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_svd'
generate(x, n_element = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_svd_ar'
generate(x, n_along = 5, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_svd_rwrandom'
generate(x, n_along = 5, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_svd_rwzero'
generate(x, n_along = 5, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_svd_rw2random'
generate(x, n_along = 5, n_by = 1, n_draw = 25, ...)

# S3 method for class 'bage_prior_svd_rw2zero'
generate(x, n_along = 5, n_by = 1, n_draw = 25, ...)

Arguments

x

Object of class "bage_prior"

n_along

Number of elements of 'along' dimension. Default is 20.

n_by

Number of combinations of 'by' variables. Default is 1.

n_draw

Number of draws. Default is 25.

...

Unused. Included for generic consistency only.

n_element

Number of elements in term, in priors that do not distinguish 'along' and 'by' dimensions. Default is 20.

Value

A tibble

Details

Some priors distinguish between 'along' and 'by' dimensions, while others do not: see priors for a complete list. Arguments n_along and n_by are used with priors that make the distinction, and argument n_element is used with priors that do not.

See also

  • priors Overview of priors implemented in bage

Examples

## prior that distinguishes 'along' and 'by'
x <- RW()
generate(x, n_along = 10, n_by = 2)
#> # A tibble: 500 × 4
#>    draw   by    along   value
#>    <fct>  <fct> <int>   <dbl>
#>  1 Draw 1 By 1      1 -0.849 
#>  2 Draw 1 By 1      2 -0.906 
#>  3 Draw 1 By 1      3 -0.570 
#>  4 Draw 1 By 1      4  0.131 
#>  5 Draw 1 By 1      5  0.0182
#>  6 Draw 1 By 1      6  0.171 
#>  7 Draw 1 By 1      7  0.462 
#>  8 Draw 1 By 1      8  0.407 
#>  9 Draw 1 By 1      9  0.236 
#> 10 Draw 1 By 1     10  0.306 
#> # ℹ 490 more rows

## prior that does not distinguish
x <- N()
generate(x, n_element = 20)
#> # A tibble: 500 × 3
#>    draw   element   value
#>    <fct>    <int>   <dbl>
#>  1 Draw 1       1  0.152 
#>  2 Draw 1       2  0.351 
#>  3 Draw 1       3  0.475 
#>  4 Draw 1       4  0.470 
#>  5 Draw 1       5 -0.405 
#>  6 Draw 1       6  0.833 
#>  7 Draw 1       7 -0.241 
#>  8 Draw 1       8 -0.888 
#>  9 Draw 1       9 -0.0349
#> 10 Draw 1      10  0.881 
#> # ℹ 490 more rows

## SVD_AR(), SVD_RW(), and SVD_RW2()
## distinguish 'along' and 'by'
x <- SVD_AR(HFD)
generate(x, n_along = 5, n_by = 2)
#> # A tibble: 11,000 × 5
#>    draw   by    along age    value
#>    <fct>  <fct> <int> <fct>  <dbl>
#>  1 Draw 1 By 1      1 12    -14.9 
#>  2 Draw 1 By 1      1 13    -12.5 
#>  3 Draw 1 By 1      1 14     -9.35
#>  4 Draw 1 By 1      1 15     -6.89
#>  5 Draw 1 By 1      1 16     -4.99
#>  6 Draw 1 By 1      1 17     -3.58
#>  7 Draw 1 By 1      1 18     -2.69
#>  8 Draw 1 By 1      1 19     -2.19
#>  9 Draw 1 By 1      1 20     -1.90
#> 10 Draw 1 By 1      1 21     -1.78
#> # ℹ 10,990 more rows

## SVD() does not
x <- SVD(HFD)
generate(x, n_element = 10)
#> # A tibble: 11,000 × 4
#>    draw   element age    value
#>    <fct>    <int> <fct>  <dbl>
#>  1 Draw 1       1 12    -11.2 
#>  2 Draw 1       1 13     -9.18
#>  3 Draw 1       1 14     -8.06
#>  4 Draw 1       1 15     -6.85
#>  5 Draw 1       1 16     -5.72
#>  6 Draw 1       1 17     -4.94
#>  7 Draw 1       1 18     -4.32
#>  8 Draw 1       1 19     -3.77
#>  9 Draw 1       1 20     -3.41
#> 10 Draw 1       1 21     -3.15
#> # ℹ 10,990 more rows