evaluateLogConDens: Evaluates the Log-Density MLE and Smoothed Estimator at...

View source: R/evaluateLogConDens.r

evaluateLogConDensR Documentation

Evaluates the Log-Density MLE and Smoothed Estimator at Arbitrary Real Numbers xs

Description

Based on a "dlc" object generated by logConDens, this function computes the values of

\widehat \phi_m(t)

\widehat f_m(t) = \exp(\widehat \phi_m(t))

\widehat F_m(t) = \int_{x_1}^t \exp(\widehat \phi_m(x)) dx

\widehat f_m^*(t) = \exp(\widehat \phi_m^*(t))

\widehat F_m^*(t) = \int_{x_1}^t \exp(\widehat \phi_m^*(x)) dx

at all real number t in xs. The exact formula for \widehat F_m and t \in [x_j,x_{j+1}] is

\widehat F_m(t) = \widehat F_m(x_j) + (x_{j+1}-x_j) J\Big(\widehat \phi_j, \widehat \phi_{j+1}, \frac{t-x_j}{x_{j+1}-x_j} \Big)

for the function J introduced in Jfunctions. Closed formulas can also be given for \widehat f_m^*(t) and \widehat F_m^*(t).

Usage

evaluateLogConDens(xs, res, which = 1:5, gam = NULL, print = FALSE)

Arguments

xs

Vector of real numbers where the functions should be evaluated at.

res

An object of class "dlc", usually a result of a call to logConDens.

which

A (sub-)vector of 1:5 specifying which of the above quantities should be computed.

gam

Only necessary if smoothed = TRUE. The standard deviation of the normal kernel. If equal to NULL, gam is chosen such that the variances of the original sample x_1, \ldots, x_n and \widehat f_n^* coincide. See logConDens for details.

print

Progress in computation of smooth estimates is shown.

Value

Matrix with rows (x_{0, i}, \widehat \phi_m(x_{0, i}), \widehat f_m(x_{0, i}), \widehat F_m(x_{0, i}), \widehat f_m^*(x_{0, i}), \widehat F_m^*(x_{0, i})) where x_{0,i} is the i-th entry of xs.

Author(s)

Kaspar Rufibach, kaspar.rufibach@gmail.com,
http://www.kasparrufibach.ch

Lutz Duembgen, duembgen@stat.unibe.ch,
https://www.imsv.unibe.ch/about_us/staff/prof_dr_duembgen_lutz/index_eng.html

Examples

## estimate gamma density
set.seed(1977)
x <- rgamma(200, 2, 1)
res <- logConDens(x, smoothed = TRUE, print = FALSE)

## compute function values at an arbitrary point
xs <- (res$x[100] + res$x[101]) / 2
evaluateLogConDens(xs, res)

## only compute function values for non-smooth estimates
evaluateLogConDens(xs, res, which = 1:3)

logcondens documentation built on Aug. 22, 2023, 5:06 p.m.