ComputeSMLE {curstatCI}R Documentation

Smoothed Maximum Likelihood Estimator

Description

The function ComputeSMLE computes the Smoothed Maximum Likelihood Estimator of the distribution function under current status data.

Usage

ComputeSMLE(data, x, bw)

Arguments

data

Dataframe with three variables:

t

Observation points t sorted in ascending order. All observations need to be positive. The total number of unique observation points equals length(t).

freq1

Frequency of observation t satisfying x \le t. The total number of observations with censoring indicator \delta =1 equals sum(freq1).

freq2

Frequency of observation t. The sample size equals sum(freq2). If no tied observations are present in the data length(t) equals sum(freq2).

x

numeric vector containing the points where the confidence intervals are computed.

bw

numeric vector of size length(x). This vector contains the pointwise bandwidth values for each point in the vector x.

Details

In the current status model, the variable of interest X with distribution function F is not observed directly. A censoring variable T is observed instead together with the indicator \Delta = (X \le T). ComputeSMLE computes the SMLE of F based on a sample of size n <- sum(data$freq2). The bandwidth parameter vector that minimizes the pointwise Mean Squared Error using the subsampling principle in combination with undersmoothing is returned by the function ComputeBW.

Value

SMLE(x) Smoothed Maximum Likelihood Estimator. This is a vector of size length(x) containing the values of the SMLE for each point in the vector x.

References

Groeneboom, P. and Hendrickx, K. (2017). The nonparametric bootstrap for the current status model. Electronic Journal of Statistics 11(2):3446-3848.

See Also

ComputeConfIntervals

Examples

library(Rcpp)
library(curstatCI)

# sample size
n <- 1000

# Uniform data  U(0,2)
set.seed(2)
y <- runif(n,0,2)
t <- runif(n,0,2)
delta <- as.numeric(y <= t)

A<-cbind(t[order(t)], delta[order(t)], rep(1,n))
grid <-seq(0,2 ,by = 0.01)

# bandwidth vector
h<-rep(2*n^-0.2,length(grid))

smle <-ComputeSMLE(A,grid,h)
plot(grid, smle,type ='l', ylim=c(0,1), main= "",ylab="",xlab="",las=1)



[Package curstatCI version 0.1.1 Index]