Learn R Programming

segmented (version 0.5-1.1)

summary.segmented: Summarizing model fits for segmented regression

Description

summary method for class segmented.

Usage

## S3 method for class 'segmented':
summary(object, short = FALSE, var.diff = FALSE, ...)

## S3 method for class 'summary.segmented':
print(x, short=x$short, var.diff=x$var.diff, 
    digits = max(3, getOption("digits") - 3),
    signif.stars = getOption("show.signif.stars"),...)

Arguments

object
Object of class "segmented".
short
logical indicating if the `short' summary should be printed.
var.diff
logical indicating if different error variances should be computed in each interval of the segmented variable, see Details.
x
a summary.segmented object produced by summary.segmented().
digits
controls number of digits printed in output.
signif.stars
logical, should stars be printed on summary tables of coefficients?
...
further arguments.

Value

  • A list (similar to one returned by segmented.lm or segmented.glm) with additional components:
  • psiestimated break-points and relevant (approximate) standard errors
  • Ttableestimates and standard errors of the model parameters. This is similar to the matrix coefficients returned by summary.lm or summary.glm, but without the rows corresponding to the breakpoints. Even the p-values relevant to the difference-in-slope parameters have been replaced by NA, since they are meaningless in this case, see davies.test.
  • gapestimated coefficients, standard errors and t-values for the `gap' variables
  • cov.var.diffif var.diff=TRUE, the covaraince matrix accounting for heteroscedastic errors.
  • sigma.newif var.diff=TRUE, the square root of the estimated error variances in each interval.
  • df.newif var.diff=TRUE, the residual degrees of freedom in each interval.

Details

If short=TRUE only coefficients of the segmented relationships are printed. If var.diff=TRUE and there is only one segmented variable, different error variances are computed in the intervals defined by the estimated breakpoints of the segmented variable. For the jth interval with nj observations the error variance is estimated via $RSS_j/(n_j-p)$, where $RSS_j$ is the residual sum of squares in interval jth, and $p$ are the model parameters. Note var.diff=TRUE does not affect the parameter estimation which is performed via ordinary (and not weighted) least squares. However if var.diff=TRUE the variance-covariance matrix of the estimates is computed via the sandwich formula, $$(X^TX)^{-1}X^TVX(X^TX)^{-1}$$ where V is the diagonal matrix including the different error variance estimates. Standard errors are the square root of the main diagonal of this matrix.

See Also

print.segmented, davies.test

Examples

Run this code
##continues example from segmented()
# summary(segmented.model,short=TRUE)

## an heteroscedastic example..
# set.seed(123)
# n<-100
# x<-1:n/n
# y<- -x+1.5*pmax(x-.5,0)+rnorm(n,0,1)*ifelse(x<=.5,.4,.1)
# o<-lm(y~x)
# oseg<-segmented(o,seg.Z=~x,psi=.6)
# summary(oseg,var.diff=TRUE)$sigma.new

Run the code above in your browser using DataLab