| Title: | A Bias Bound Approach to Non-Parametric Inference |
|---|---|
| Description: | A novel bias-bound approach for non-parametric inference is introduced, focusing on both density and conditional expectation estimation. It constructs valid confidence intervals that account for the presence of a non-negligible bias and thus make it possible to perform inference with optimal mean squared error minimizing bandwidths. This package is based on Schennach (2020) <doi:10.1093/restud/rdz065>. |
| Authors: | Xinyu DAI [aut, cre], Susanne M Schennach [aut] |
| Maintainer: | Xinyu DAI <[email protected]> |
| License: | GPL (>= 3) |
| Version: | 1.1.0 |
| Built: | 2026-06-09 11:20:36 UTC |
| Source: | https://github.com/cran/rbbnp |
Estimates the density at a given point or across a range, and provides visualization options for density, bias, and confidence intervals.
biasBound_condExpectation( Y, X, x = NULL, h = NULL, h_method = "cv", alpha = 0.05, est_Ar = NULL, resol = 100, xi_lb = NULL, xi_ub = NULL, methods_get_xi = "snr", noise_floor = "auto", envelope_use_Y = TRUE, integer_r = TRUE, ora_Ar = NULL, kernel.fun = "Schennach2004", if_approx_kernel = TRUE, kernel.resol = 1000 )biasBound_condExpectation( Y, X, x = NULL, h = NULL, h_method = "cv", alpha = 0.05, est_Ar = NULL, resol = 100, xi_lb = NULL, xi_ub = NULL, methods_get_xi = "snr", noise_floor = "auto", envelope_use_Y = TRUE, integer_r = TRUE, ora_Ar = NULL, kernel.fun = "Schennach2004", if_approx_kernel = TRUE, kernel.resol = 1000 )
Y |
A numerical vector of sample data. |
X |
A numerical vector of sample data. |
x |
Optional. A scalar or range of points where the density is estimated. If NULL, a range is automatically generated. |
h |
A scalar bandwidth parameter. If NULL, the bandwidth is automatically selected using the method specified in 'h_method'. |
h_method |
Method for automatic bandwidth selection when h is NULL. Options are "cv" (cross-validation) and "silverman" (Silverman's rule of thumb). Default is "cv". |
alpha |
Confidence level for intervals. Default is 0.05. |
est_Ar |
Optional list of estimates for A and r. If NULL, they are computed using |
resol |
Resolution for the estimation range. Default is 100. |
xi_lb |
Optional. Lower bound for the interval of Fourier Transform frequency xi. Used for determining the range over which A and r is estimated. If NULL, it is automatically determined based on the methods_get_xi. |
xi_ub |
Optional. Upper bound for the interval of Fourier Transform frequency xi. Similar to xi_lb, it defines the upper range for A and r estimation. If NULL, the upper bound is determined based on the methods_get_xi. |
methods_get_xi |
A string selecting the frequency-window rule used when xi_lb/xi_ub are NULL: "snr" (default; a signal-to-noise cutoff that selects a valid window at realistic sample sizes), "Schennach" (the data-driven rule of Schennach 2020, Theorem 2), or "Schennach_loose" (the initial, un-refined interval). |
noise_floor |
Noise-floor form for the Schennach test: "auto" (default), "compact", or "general". |
envelope_use_Y |
If TRUE (default), fit the regression envelope to the cross-spectrum |
integer_r |
If TRUE (default), clamp the fitted envelope slope up to r = 2 when it falls below the minimum smoothness assumed by Schennach (2020, Definition 2), i.e. r < 2, and refit A; this keeps the bias-bound integral finite. Slopes >= 2 are left unchanged. |
ora_Ar |
Optional list of oracle values for A and r (for research/comparison purposes). |
kernel.fun |
A string specifying the kernel function to be used. Options are "Schennach2004", "sinc", "normal", "epanechnikov". |
if_approx_kernel |
Logical. If TRUE, uses approximations for the kernel function. |
kernel.resol |
The resolution for kernel function approximation. See |
An object of class bbnp_regression with components:
fitted_values |
|
x |
Evaluation points |
estimate |
Point estimate (for single x) |
conf_int |
List containing lower, upper bounds and conf_level. Note that
the confidence interval can be unbounded (i.e., contain |
bias_bound |
List containing b1x, byx, est_A, est_r, est_B, xi_interval |
std_error |
Standard errors |
marginal_density |
f(x) estimates |
joint_density |
f_YX estimates |
call |
The function call |
bandwidth |
Bandwidth used |
n |
Sample size |
kernel |
Kernel type |
data |
Original data (X, Y) |
Use plot(), summary(), coef(), fitted(), and confint() methods to work with the result.
# Example 1: Point estimation at x = 1 X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y = Y, X = X, x = 1, h = 0.09) print(fit) fitted(fit) # Example 2: Range estimation with plots fit2 <- biasBound_condExpectation(Y = Y, X = X, h = NULL, h_method = "cv") plot(fit2) # Regression plot plot(fit2, type = "ft") # Fourier transform plot summary(fit2)# Example 1: Point estimation at x = 1 X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y = Y, X = X, x = 1, h = 0.09) print(fit) fitted(fit) # Example 2: Range estimation with plots fit2 <- biasBound_condExpectation(Y = Y, X = X, h = NULL, h_method = "cv") plot(fit2) # Regression plot plot(fit2, type = "ft") # Fourier transform plot summary(fit2)
Estimates the density at a given point or across a range, and provides visualization options for density, bias, and confidence intervals.
biasBound_density( X, x = NULL, h = NULL, h_method = "cv", alpha = 0.05, resol = 100, xi_lb = NULL, xi_ub = NULL, methods_get_xi = "snr", noise_floor = "auto", envelope_use_Y = TRUE, integer_r = TRUE, ora_Ar = NULL, kernel.fun = "Schennach2004", if_approx_kernel = TRUE, kernel.resol = 1000 )biasBound_density( X, x = NULL, h = NULL, h_method = "cv", alpha = 0.05, resol = 100, xi_lb = NULL, xi_ub = NULL, methods_get_xi = "snr", noise_floor = "auto", envelope_use_Y = TRUE, integer_r = TRUE, ora_Ar = NULL, kernel.fun = "Schennach2004", if_approx_kernel = TRUE, kernel.resol = 1000 )
X |
A numerical vector of sample data. |
x |
Optional. A scalar or range of points where the density is estimated. If NULL, a range is automatically generated. |
h |
A scalar bandwidth parameter. If NULL, the bandwidth is automatically selected using the method specified in 'h_method'. |
h_method |
Method for automatic bandwidth selection when h is NULL. Options are "cv" (cross-validation) and "silverman" (Silverman's rule of thumb). Default is "cv". |
alpha |
Confidence level for intervals. Default is 0.05. |
resol |
Resolution for the estimation range. Default is 100. |
xi_lb |
Optional. Lower bound for the interval of Fourier Transform frequency xi. Used for determining the range over which A and r is estimated. If NULL, it is automatically determined based on the methods_get_xi. |
xi_ub |
Optional. Upper bound for the interval of Fourier Transform frequency xi. Similar to xi_lb, it defines the upper range for A and r estimation. If NULL, the upper bound is determined based on the methods_get_xi. |
methods_get_xi |
A string selecting the frequency-window rule used when xi_lb/xi_ub are NULL: "snr" (default; a signal-to-noise cutoff that selects a valid window at realistic sample sizes), "Schennach" (the data-driven rule of Schennach 2020, Theorem 2), or "Schennach_loose" (the initial, un-refined interval). |
noise_floor |
Noise-floor form for the Schennach test: "auto" (default), "compact", or "general". |
envelope_use_Y |
If TRUE (default), fit the regression envelope to the cross-spectrum |
integer_r |
If TRUE (default), clamp the fitted envelope slope up to r = 2 when it falls below the minimum smoothness assumed by Schennach (2020, Definition 2), i.e. r < 2, and refit A; this keeps the bias-bound integral finite. Slopes >= 2 are left unchanged. |
ora_Ar |
Optional list of oracle values for A and r (for research/comparison purposes). |
kernel.fun |
A string specifying the kernel function to be used. Options are "Schennach2004", "sinc", "normal", "epanechnikov". |
if_approx_kernel |
Logical. If TRUE, uses approximations for the kernel function. |
kernel.resol |
The resolution for kernel function approximation. See |
An object of class bbnp_density with components:
density |
Density estimates (for range estimation) |
x |
Evaluation points |
estimate |
Point estimate (for single x) |
conf_int |
List containing lower, upper bounds and conf_level |
bias_bound |
List containing b1x, est_A, est_r, xi_interval |
std_error |
Standard errors |
call |
The function call |
bandwidth |
Bandwidth used |
n |
Sample size |
kernel |
Kernel type |
data |
Original data |
Use plot(), summary(), coef(), and confint() methods to work with the result.
# Example 1: Point estimation at x = 1 X <- rnorm(100) fit <- biasBound_density(X = X, x = 1, h = 0.09) print(fit) coef(fit) # Example 2: Range estimation with automatic bandwidth fit2 <- biasBound_density(X = X, h = NULL, h_method = "cv") plot(fit2) # Density plot plot(fit2, type = "ft") # Fourier transform plot summary(fit2)# Example 1: Point estimation at x = 1 X <- rnorm(100) fit <- biasBound_density(X = X, x = 1, h = 0.09) print(fit) coef(fit) # Example 2: Range estimation with automatic bandwidth fit2 <- biasBound_density(X = X, h = NULL, h_method = "cv") plot(fit2) # Density plot plot(fit2, type = "ft") # Fourier transform plot summary(fit2)
Extracts the estimated bias bound parameters and bandwidth
## S3 method for class 'bbnp_density' coef(object, ...)## S3 method for class 'bbnp_density' coef(object, ...)
object |
An object of class bbnp_density |
... |
Additional arguments (unused) |
Named numeric vector with A (amplitude), r (decay rate), and h (bandwidth)
X <- rnorm(100) fit <- biasBound_density(X, h = 0.1) coef(fit)X <- rnorm(100) fit <- biasBound_density(X, h = 0.1) coef(fit)
Extracts the estimated bias bound parameters and bandwidth
## S3 method for class 'bbnp_regression' coef(object, ...)## S3 method for class 'bbnp_regression' coef(object, ...)
object |
An object of class bbnp_regression |
... |
Additional arguments (unused) |
Named numeric vector with A (amplitude), r (decay rate), B (Y bound), and h (bandwidth)
X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y, X, h = 0.1) coef(fit)X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y, X, h = 0.1) coef(fit)
Extracts confidence intervals for density estimates
## S3 method for class 'bbnp_density' confint(object, parm = NULL, level = 0.95, ...)## S3 method for class 'bbnp_density' confint(object, parm = NULL, level = 0.95, ...)
object |
An object of class bbnp_density |
parm |
Not used (included for S3 generic compatibility) |
level |
Confidence level (default: 0.95). Note: this parameter is not used as the confidence level is fixed at object creation time. |
... |
Additional arguments (unused) |
For range estimation: a matrix with columns "lower" and "upper" For point estimation: a named vector with elements "lower" and "upper"
X <- rnorm(100) fit <- biasBound_density(X, h = 0.1) confint(fit)X <- rnorm(100) fit <- biasBound_density(X, h = 0.1) confint(fit)
Extracts confidence intervals for conditional expectation estimates
## S3 method for class 'bbnp_regression' confint(object, parm = NULL, level = 0.95, ...)## S3 method for class 'bbnp_regression' confint(object, parm = NULL, level = 0.95, ...)
object |
An object of class bbnp_regression |
parm |
Not used (included for S3 generic compatibility) |
level |
Confidence level (default: 0.95). Note: this parameter is not used as the confidence level is fixed at object creation time. |
... |
Additional arguments (unused) |
For range estimation: a matrix with columns "lower" and "upper" For point estimation: a named vector with elements "lower" and "upper"
X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y, X, h = 0.1) confint(fit)X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y, X, h = 0.1) confint(fit)
Create a configuration object for bias bound estimations
create_biasBound_config( X, Y = NULL, h = NULL, h_method = "cv", use_fft = TRUE, alpha = 0.05, resol = 100, xi_lb = NULL, xi_ub = NULL, methods_get_xi = "snr", noise_floor = "auto", envelope_use_Y = TRUE, integer_r = TRUE, kernel.fun = "Schennach2004", if_approx_kernel = TRUE, kernel.resol = 1000 )create_biasBound_config( X, Y = NULL, h = NULL, h_method = "cv", use_fft = TRUE, alpha = 0.05, resol = 100, xi_lb = NULL, xi_ub = NULL, methods_get_xi = "snr", noise_floor = "auto", envelope_use_Y = TRUE, integer_r = TRUE, kernel.fun = "Schennach2004", if_approx_kernel = TRUE, kernel.resol = 1000 )
X |
A numerical vector of sample data. |
Y |
Optional. A numerical vector of sample data for conditional expectation. |
h |
A scalar bandwidth parameter. If NULL, the bandwidth is automatically selected using the method specified in 'h_method'. |
h_method |
Method for automatic bandwidth selection when h is NULL. Options are "cv" (cross-validation) and "silverman" (Silverman's rule of thumb). Default is "cv". |
use_fft |
Ignored. Maintained for backward compatibility. |
alpha |
Confidence level for intervals. |
resol |
Resolution for the estimation range. |
xi_lb |
Lower bound for the interval of Fourier Transform frequency. |
xi_ub |
Upper bound for the interval of Fourier Transform frequency. |
methods_get_xi |
Method to determine the xi interval: "snr" (default), "Schennach", or "Schennach_loose". |
noise_floor |
Noise-floor form for the Schennach test: "auto" (default), "compact", or "general". |
envelope_use_Y |
If TRUE (default), fit the regression envelope to the cross-spectrum
|
integer_r |
If TRUE (default), when the fitted envelope slope falls below the minimum smoothness assumed by Schennach (2020, Definition 2), i.e. r < 2, clamp it up to r = 2 and refit A; this keeps the bias-bound integral finite. Slopes >= 2 are left unchanged. |
kernel.fun |
Kernel function to be used. Options include "normal", "epanechnikov", "Schennach2004", and "sinc". |
if_approx_kernel |
Use approximations for the kernel function. |
kernel.resol |
Resolution for kernel approximation. |
A configuration object (list) with all parameters
Create kernel functions based on configuration
create_kernel_functions( kernel.fun = "Schennach2004", if_approx_kernel = TRUE, kernel.resol = 1000 )create_kernel_functions( kernel.fun = "Schennach2004", if_approx_kernel = TRUE, kernel.resol = 1000 )
kernel.fun |
A string specifying the kernel function to be used. |
if_approx_kernel |
Logical. If TRUE, uses approximations for the kernel function. |
kernel.resol |
The resolution for kernel function approximation. |
A list containing kernel function, its Fourier transform, and the kernel type
Implements least-squares cross-validation for bandwidth selection with any kernel function. Uses FFT-based algorithm for n >= 100 (fast, O(m log m) complexity) and exact computation for n < 100 (accurate). The FFT method bins data onto a regular grid and computes the LSCV objective via convolution in the frequency domain.
cv_bandwidth( X, h_grid = NULL, kernel_func, kernel_type = "normal", grid_size = 512 )cv_bandwidth( X, h_grid = NULL, kernel_func, kernel_type = "normal", grid_size = 512 )
X |
A numerical vector of sample data. |
h_grid |
A numerical vector of bandwidth values to evaluate. If NULL (default), a grid is automatically generated based on the range and distribution of the data. |
kernel_func |
The kernel function to use for cross-validation. |
kernel_type |
A string identifying the kernel type, used only for reference bandwidth. |
grid_size |
Number of grid points for FFT-based evaluation (used when n >= 100). Default is 512. Larger values increase accuracy but reduce speed. Automatically rounded up to the next power of 2. |
A scalar representing the optimal bandwidth that minimizes the cross-validation score.
# Generate sample data X <- rnorm(100) # Get optimal bandwidth using cross-validation with a normal kernel kernel_functions <- create_kernel_functions("normal") h_opt <- cv_bandwidth(X, kernel_func = kernel_functions$kernel, kernel_type = kernel_functions$kernel_type)# Generate sample data X <- rnorm(100) # Get optimal bandwidth using cross-validation with a normal kernel kernel_functions <- create_kernel_functions("normal") h_opt <- cv_bandwidth(X, kernel_func = kernel_functions$kernel, kernel_type = kernel_functions$kernel_type)
Extracts the fitted conditional expectation values
## S3 method for class 'bbnp_regression' fitted(object, ...)## S3 method for class 'bbnp_regression' fitted(object, ...)
object |
An object of class bbnp_regression |
... |
Additional arguments (unused) |
Numeric vector of fitted values for range estimation, or a single numeric value for point estimation
X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y, X, h = 0.1) fitted(fit)X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y, X, h = 0.1) fitted(fit)
This function used for generate some sample data for experiment
gen_sample_data(size, dgp, seed = NULL)gen_sample_data(size, dgp, seed = NULL)
size |
control the sample size. |
dgp |
data generating process, have options "normal", "chisq", "mixed", "poly", "2_fold_uniform". |
seed |
random seed number. |
A numeric vector of length size. The elements of the vector
are generated according to the specified dgp:
Normally distributed values with mean 0 and standard deviation 2.
Chi-squared distributed values with df = 10.
Half normally distributed (mean 0, sd = 2) and half chi-squared distributed (df = 10) values.
Values from a polynomial cumulative distribution function on [0,1].
Sum of two uniformly distributed random numbers.
# Generate 500 samples from 2-fold uniform distribution X <- gen_sample_data(500, "2_fold_uniform", seed = 123)# Generate 500 samples from 2-fold uniform distribution X <- gen_sample_data(500, "2_fold_uniform", seed = 123)
Creates visualizations of bias-bounded density estimation results
## S3 method for class 'bbnp_density' plot( x, type = c("density", "ft"), fill_ci = .bbnp_pal[["ci"]], fill_bias = .bbnp_pal[["bias"]], alpha_ci = 0.55, alpha_bias = 0.55, ft_resol = 500, xi_range = NULL, expand = 2.5, ... )## S3 method for class 'bbnp_density' plot( x, type = c("density", "ft"), fill_ci = .bbnp_pal[["ci"]], fill_bias = .bbnp_pal[["bias"]], alpha_ci = 0.55, alpha_bias = 0.55, ft_resol = 500, xi_range = NULL, expand = 2.5, ... )
x |
An object of class bbnp_density |
type |
Character string specifying plot type. Options are:
|
fill_ci |
Color for confidence interval ribbon (default: a muted blue). |
fill_bias |
Color for bias bound ribbon (default: a muted terracotta). |
alpha_ci |
Transparency for confidence interval ribbon (default: 0.30) |
alpha_bias |
Transparency for bias bound ribbon (default: 0.45) |
ft_resol |
Resolution for Fourier transform plot (default: 500) |
xi_range |
Optional numeric |
expand |
For the |
... |
Additional arguments (unused) |
A ggplot2 object
X <- rnorm(100) fit <- biasBound_density(X, h = 0.1) plot(fit) plot(fit, type = "ft")X <- rnorm(100) fit <- biasBound_density(X, h = 0.1) plot(fit) plot(fit, type = "ft")
Creates visualizations of bias-bounded conditional expectation estimation results
## S3 method for class 'bbnp_regression' plot( x, type = c("regression", "ft"), fill_ci = .bbnp_pal[["ci"]], alpha_ci = 0.55, point_alpha = 0.28, point_color = .bbnp_pal[["point"]], ft_resol = 500, xi_range = NULL, expand = 2.5, ... )## S3 method for class 'bbnp_regression' plot( x, type = c("regression", "ft"), fill_ci = .bbnp_pal[["ci"]], alpha_ci = 0.55, point_alpha = 0.28, point_color = .bbnp_pal[["point"]], ft_resol = 500, xi_range = NULL, expand = 2.5, ... )
x |
An object of class bbnp_regression |
type |
Character string specifying plot type. Options are:
|
fill_ci |
Color for confidence interval ribbon (default: a muted blue). |
alpha_ci |
Transparency for confidence interval ribbon (default: 0.35) |
point_alpha |
Transparency for data points (default: 0.28) |
point_color |
Color for data points (default: a soft grey). |
ft_resol |
Resolution for Fourier transform plot (default: 500) |
xi_range |
Optional numeric |
expand |
For the |
... |
Additional arguments (unused) |
A ggplot2 object
X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y, X, h = 0.1) plot(fit) plot(fit, type = "ft")X <- rnorm(100) Y <- X^2 + rnorm(100) fit <- biasBound_condExpectation(Y, X, h = 0.1) plot(fit) plot(fit, type = "ft")
Print Method for bbnp_density Objects
## S3 method for class 'bbnp_density' print(x, digits = 4, ...)## S3 method for class 'bbnp_density' print(x, digits = 4, ...)
x |
An object of class bbnp_density |
digits |
Number of digits to display (default: 4) |
... |
Additional arguments (unused) |
Invisibly returns the input object
Print Method for bbnp_regression Objects
## S3 method for class 'bbnp_regression' print(x, digits = 4, ...)## S3 method for class 'bbnp_regression' print(x, digits = 4, ...)
x |
An object of class bbnp_regression |
digits |
Number of digits to display (default: 4) |
... |
Additional arguments (unused) |
Invisibly returns the input object
Sample Data
sample_datasample_data
A data frame with 1000 rows and 2 variables:
Numeric vector, generated from 2 fold uniform distribution.
Numeric vector, Y = -X^2 + 3*X + rnorm(1000)*X.
Selects an optimal bandwidth using the specified method.
select_bandwidth( X, Y = NULL, method = "cv", kernel.fun = "normal", if_approx_kernel = TRUE, kernel.resol = 1000 )select_bandwidth( X, Y = NULL, method = "cv", kernel.fun = "normal", if_approx_kernel = TRUE, kernel.resol = 1000 )
X |
A numerical vector of sample data. |
Y |
Optional. A numerical vector of sample data for conditional expectation estimation. |
method |
A string specifying the bandwidth selection method. Options are "cv" for cross-validation and "silverman" for Silverman's rule of thumb. Defaults to "cv". |
kernel.fun |
A string specifying the kernel type. Options include "normal", "epanechnikov", "Schennach2004", and "sinc". |
if_approx_kernel |
Logical. If TRUE, uses approximations for the kernel function. |
kernel.resol |
The resolution for kernel function approximation. |
A scalar representing the optimal bandwidth.
# Generate sample data X <- rnorm(100) # Get optimal bandwidth using cross-validation with normal kernel h_opt <- select_bandwidth(X, method = "cv", kernel.fun = "normal") # Get optimal bandwidth using Silverman's rule with Schennach kernel h_opt <- select_bandwidth(X, method = "silverman", kernel.fun = "Schennach2004")# Generate sample data X <- rnorm(100) # Get optimal bandwidth using cross-validation with normal kernel h_opt <- select_bandwidth(X, method = "cv", kernel.fun = "normal") # Get optimal bandwidth using Silverman's rule with Schennach kernel h_opt <- select_bandwidth(X, method = "silverman", kernel.fun = "Schennach2004")
Implements Silverman's rule of thumb for selecting an optimal bandwidth in kernel density estimation.
silverman_bandwidth(X, kernel_type = "normal")silverman_bandwidth(X, kernel_type = "normal")
X |
A numerical vector of sample data. |
kernel_type |
A string identifying the kernel type. |
A scalar representing the optimal bandwidth.
# Generate sample data X <- rnorm(100) # Get optimal bandwidth using Silverman's rule h_opt <- silverman_bandwidth(X, kernel_type = "normal")# Generate sample data X <- rnorm(100) # Get optimal bandwidth using Silverman's rule h_opt <- silverman_bandwidth(X, kernel_type = "normal")
Summary Method for bbnp_density Objects
## S3 method for class 'bbnp_density' summary(object, ...)## S3 method for class 'bbnp_density' summary(object, ...)
object |
An object of class bbnp_density |
... |
Additional arguments (unused) |
An object of class summary.bbnp_density
Summary Method for bbnp_regression Objects
## S3 method for class 'bbnp_regression' summary(object, ...)## S3 method for class 'bbnp_regression' summary(object, ...)
object |
An object of class bbnp_regression |
... |
Additional arguments (unused) |
An object of class summary.bbnp_regression