Computes confidence intervals for the breakpoints in a fitted `segmented' model.
# S3 method for segmented
confint(object, parm, level=0.95, method=c("delta", "score", "gradient"),
rev.sgn=FALSE, var.diff=FALSE, is=FALSE, digits=max(4, getOption("digits") - 1),
.coef=NULL, .vcov=NULL, ...)A matrix including point estimate and confidence limits of the breakpoint(s) for the
segmented variable possibly specified in parm.
a fitted segmented object.
the segmented variable of interest. If missing the first segmented variable in object is considered.
the confidence level required, default to 0.95.
which confidence interval should be computed. One of "delta", "score", or "gradient". Can be abbreviated.
vector of logicals. The length should be equal to the length of parm; recycled otherwise.
when TRUE it is assumed that the current parm is `minus' the actual segmented variable,
therefore the sign is reversed before printing. This is useful when a null-constraint has been set on the last slope.
logical. If method="delta", and there is a single segmented variable, var.diff=TRUE leads to standard errors based on sandwich-type formula of the covariance matrix. See Details in summary.segmented.
logical. If method="delta", is=TRUE means that the full covariance matrix is computed via
vcov(.., is=TRUE)
controls the number of digits to print when returning the output.
The regression parameter estimates. If unspecified (i.e. NULL), it is computed internally by coef(object).
The full covariance matrix of estimates. If unspecified (i.e. NULL), the covariance matrix is computed internally by vcov(object).
additional parameters referring to Score-based confidence intervals, such as "h", "d.h", "bw", "msgWarn", and "n.values"
specifying the number of points used to profile the Score (or Gradient) statistic.
Vito M.R. Muggeo
confint.segmented computes confidence limits for the breakpoints. Currently there are three options, see argument method.
method="delta" uses the standard error coming from the Delta
method for the ratio of two random variables. This value is an approximation (slightly) better than the
one reported in the `psi' component of the list returned by any segmented method. The resulting
confidence intervals are based on the asymptotic Normal distribution of the breakpoint
estimator which is reliable just for clear-cut kink relationships. See Details in segmented.
method="score" or method="gradient" compute the
confidence interval via profiling the Score or the Gradient statistics smoothed out by the induced smoothing paradigm, as discussed in the reference below.
Muggeo, V.M.R. (2017) Interval estimation for the breakpoint in segmented regression: a smoothed score-based approach. Australian & New Zealand Journal of Statistics 59, 311--322.
segmented and lines.segmented to plot the estimated breakpoints with corresponding
confidence intervals.
set.seed(10)
x<-1:100
z<-runif(100)
y<-2+1.5*pmax(x-35,0)-1.5*pmax(x-70,0)+10*pmax(z-.5,0)+rnorm(100,0,2)
out.lm<-lm(y~x)
o<-segmented(out.lm,seg.Z=~x+z,psi=list(x=c(30,60),z=.4))
confint(o) #delta CI for the 1st variable
confint(o, "x", method="score") #also method="g"
Run the code above in your browser using DataLab