monotone {monotone}R Documentation

Monotone Regression Function

Description

monotone performs simple linear ordered monotone or isotonic regression. The function follows the up-and-down-blocks implementation (Kruskal, 1964) of the pool-adjacent-violators algorithm (Ayer, Brunk, Ewing, Reid, and Silverman, 1955) with additional lookaheads (Busing, 2022).

Usage

monotone(x, w = rep(1, length(x)))

Arguments

x

a real-valued vector.

w

a real-valued vector with positive weights (default a vector with ones).

Details

Error checking on x or w is not present.

Value

Returns a real-valued vector with values of x in increasing order.

References

Ayer M., H.D. Brunk, G.M. Ewing, W.T. Reid, and E. Silverman (1955). An empirical distribution function for sampling with incomplete information. The Annals of Mathematical Statistics, pp. 641-647. URL https://www.jstor.org/stable/pdf/2236377.pdf.

Busing, F.M.T.A. (2022). Monotone Regression: A Simple and Fast O(n) PAVA Implementation. Journal of Statistical Software, Code Snippets, 102 (1), pp. 1-25. (<doi:10.18637/jss.v102.c01>)

Kruskal, J.B. (1964). Nonmetric multidimensional scaling: a numerical method. Psychometrika, 29(2), pp. 115-129. URL http://cda.psych.uiuc.edu/psychometrika_highly_cited_articles/kruskal_1964b.pdf.

Examples

y <- c( 8, 4, 8, 2, 2, 0, 8 )
x <- monotone( y )
print( x )


[Package monotone version 0.1.2 Index]