View source: R/PredictAndSimulate.R
predictSLGP_quantiles | R Documentation |
Computes quantile values at specified levels (probs
) for new covariate points,
based on the posterior CDFs from a trained SLGP model.
predictSLGP_quantiles(
SLGPmodel,
newNodes,
probs,
interpolateBasisFun = "WNN",
nIntegral = 101,
nDiscret = 101
)
SLGPmodel |
An object of class |
newNodes |
A data frame of covariate values. |
probs |
Numeric vector of quantile levels to compute (e.g., 0.1, 0.5, 0.9). |
interpolateBasisFun |
Character string specifying interpolation scheme: |
nIntegral |
Number of integration points for computing the SLGP outputs. |
nDiscret |
Discretization level of the response axis (for CDF inversion). |
A data frame with columns:
The covariates in newNodes
(repeated per quantile level),
A column probs
indicating the quantile level,
Columns qSLGP_1
, qSLGP_2
, ... for each posterior sample's quantile estimate.
# Load Boston housing dataset
library(MASS)
data("Boston")
# Set input and output ranges manually (you can also use range(Boston$age), etc.)
range_x <- c(0, 100)
range_response <- c(0, 50)
# Train an SLGP model using Laplace estimation and RFF basis
modelLaplace <- slgp(medv ~ age, # Use a formula to specify response and covariates
data = Boston, # Use the original Boston housing data
method = "Laplace", # Train using Maximum A Posteriori estimation
basisFunctionsUsed = "RFF", # Random Fourier Features
sigmaEstimationMethod = "heuristic", # Auto-tune sigma2 (more stable)
predictorsLower = range_x[1], # Lower bound for 'age'
predictorsUpper = range_x[2], # Upper bound for 'age'
responseRange = range_response, # Range for 'medv'
opts_BasisFun = list(nFreq = 200, # Use 200 Fourier features
MatParam = 5/2), # Matern 5/2 kernel
seed = 1) # Reproducibility
dfX <- data.frame(age=seq(range_x[1], range_x[2], 1))
# Predict some quantiles, for instance here the first quartile, median, third quartile
predQuartiles <- predictSLGP_quantiles(SLGPmodel= modelLaplace,
newNodes = dfX,
probs=c(0.25, 0.50, 0.75))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.