R/predictCDF.R
predict.cdfMODEL.Rd
This is an utility function to get predictions from the probability distributions models used in Methyl-IT: Weibull, Gamma, and generalized Gamma. Some times, after the nonlinear fit of any of the mentioned modelsm we would like to evaluate the model output.
predict.cdfMODEL(
object,
pred = "quant",
q = 0.95,
dist.name,
lower.tail = TRUE
)
predict.cdfMODELlist(
object,
pred = "quant",
q = 0.95,
dist.name,
num.cores = 1L,
tasks = 0L
)
An object carrying the best nonlinear fit for a distribution model
obtained with function nonlinearFitDist
.
Type of prediction resquested: density ('dens'),quantiles ('quant'), random number ('rnum') or probabilities ('prob').
numeric vector of quantiles, probabilities or an interger if pred = 'rnum'.
name of the distribution to fit: Weibull2P (default: 'Weibull2P'), Weibull three-parameters (Weibull3P), gamma with three-parameter (Gamma3P), gamma with two-parameter (Gamma2P), generalized gamma with three-parameter ('GGamma3P') or four-parameter ('GGamma4P').
logical; if TRUE (default), probabilities are \(P(X \leq x)\), otherwise, \(P(X > x)\) )(p-value).
Paramaters for parallele computation using package
BiocParallel-package
: the number of cores to use,
i.e. at most how many child processes will be run simultaneously (see
bplapply
and the number of tasks per job (only
for Linux OS).
Predictions are based on the best model fit returned by function
nonlinearFitDist
. The possible prediction are: density,
quantiles, random number or probabilities.
data(HD)
set.seed(13)
num.points <- 8286
HD <- HD[4]
HD$T1$hdiv <- rweibull(1:num.points, shape = 0.75, scale = 1)
nlms <- nonlinearFitDist(HD, column = 9L, verbose = FALSE)
x=seq(0.1, 10, 0.05)
## Predicted values
y <- predict(nlms[[1]], pred='prob', q = x, dist.name='Weibull2P')
## Theoretical values
y1 <- pweibull(x, shape = 0.75, scale = 1)
# The maximum difference between the 'theoretical' and estimated densities
max(abs(round(y, 2) - round(y1, 2)))
#> [1] 0.01