Skip to content

Do we really need distr prediction type in PredictionRegr? #1325

@bblodfon

Description

@bblodfon

I think this predict type was created because in mlr3proba we have a pipeline (and associated PipeOp and plotting function) to combine response and se regression predict types into some kind of distribution form (distr). I don't think we really need this, unless someone makes a more proper/dedicated probabilistic regression/distribution package.

See example of what the pipeline in mlr3proba does (note that the printing for the distr is not optimal, in mlr3proba we wrap this distr6 objects in a list in the data.table shown below):

library(mlr3proba)
#> Loading required package: mlr3
library(mlr3pipelines)
set.seed(1)
task = tsk("boston_housing")

# Option 1: Use a learner that can predict se
learn = lrn("regr.featureless", predict_type = "se")
pred = learn$train(task)$predict(task)
poc = po("compose_probregr") # SE => DISTR
poc$train(list(NULL, NULL))
#> $output
#> NULL
poc$predict(list(pred, pred))[[1]]
#> 
#> ── <PredictionRegr> for 506 observations: ──────────────────────────────────────
#>  row_ids truth response       se
#>        1  24.0 22.52885 9.182176
#>        2  21.6 22.52885 9.182176
#>        3  34.7 22.52885 9.182176
#>      ---   ---      ---      ---
#>      504  23.9 22.52885 9.182176
#>      505  22.0 22.52885 9.182176
#>      506  19.0 22.52885 9.182176
#>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          distr
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ---
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list

# Option 2: Use two learners, one for response and the other for se
learn_response = lrn("regr.rpart")
learn_se = lrn("regr.featureless", predict_type = "se")
pred_response = learn_response$train(task)$predict(task)
pred_se = learn_se$train(task)$predict(task)
poc = po("compose_probregr") # (SE, RESPONSE) => DISTR
poc$train(list(NULL, NULL))
#> $output
#> NULL
poc$predict(list(pred_response, pred_se))[[1]]
#> 
#> ── <PredictionRegr> for 506 observations: ──────────────────────────────────────
#>  row_ids truth response       se
#>        1  24.0 24.53538 9.182176
#>        2  21.6 26.91481 9.182176
#>        3  34.7 32.96875 9.182176
#>      ---   ---      ---      ---
#>      504  23.9 24.53538 9.182176
#>      505  22.0 24.53538 9.182176
#>      506  19.0 20.96400 9.182176
#>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          distr
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ---
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list
#>  <VectorDistribution>\n  Inherits from: <DistributionWrapper>\n  Public:\n    alias: \n    cdf: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    cf: function (t, ...) \n    clone: function (deep = FALSE) \n    confidence: function (alpha = 0.95, sides = "both", median = FALSE) \n    correlation: function () \n    decorators: active binding\n    description: Vector of 506 Uniforms\n    distlist: active binding\n    dmax: active binding\n    dmin: active binding\n    entropy: function (base = 2, ...) \n    getParameterValue: function (id, ...) \n    ids: active binding\n    inf: active binding\n    initialize: function (distlist = NULL, distribution = NULL, params = NULL, \n    iqr: function () \n    kurtosis: function (excess = TRUE, ...) \n    kurtosisType: active binding\n    liesInSupport: function (x, all = TRUE, bound = FALSE) \n    liesInType: function (x, all = TRUE, bound = FALSE) \n    mean: function (...) \n    median: function () \n    mgf: function (t, ...) \n    mode: function (which = "all") \n    modelTable: active binding\n    name: Vector: 506 Uniforms\n    parameters: function (id = NULL) \n    pdf: function (..., log = FALSE, simplify = TRUE, data = NULL) \n    pgf: function (z, ...) \n    prec: function () \n    print: function (n = 2, ...) \n    properties: active binding\n    quantile: function (..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE, \n    rand: function (n, simplify = TRUE) \n    setParameterValue: function (..., lst = list(...), error = "warn", resolveConflicts = FALSE) \n    short_name: Vec506Unif\n    skewness: function (...) \n    skewnessType: active binding\n    stdev: function () \n    strprint: function (n = 10) \n    summary: function (full = TRUE, ...) \n    sup: active binding\n    support: active binding\n    symmetry: active binding\n    traits: active binding\n    type: active binding\n    valueSupport: active binding\n    variance: function (...) \n    variateForm: active binding\n    workingSupport: function () \n    wrappedModels: function (model = NULL) \n  Private:\n    .cdf: function (x1, lower.tail, log.p) \n    .decorators: NULL\n    .distlist: FALSE\n    .isCdf: 1\n    .isPdf: 1\n    .isQuantile: 1\n    .isRand: 1\n    .log: TRUE\n    .modelTable: data.table, data.frame\n    .outerParameters: NULL\n    .parameters: ParameterSet, R6\n    .pdf: function (x1, log) \n    .properties: list\n    .quantile: function (x1, lower.tail, log.p) \n    .rand: function (x1) \n    .sharedparams: list\n    .traits: list\n    .trials: \n    .univariate: TRUE\n    .updateDecorators: function (decs) \n    .variates: 1\n    .wrappedModels: list

Created on 2025-06-26 with reprex v2.1.1

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions