sm.monotonicity {sm} | R Documentation |
This function uses the idea of a ‘critical bandwidth’ to assess the evidence that a regression curve is non-monotonic. A hypothesis test is carried out by bootstrap methods and the empirical p-value is reported. Response variables on a continuous scale or with binomial variation can be handled.
sm.monotonicity(x, y, N = rep(1, length(y)), h, type = "continuous", ...)
x |
a vector of covariate values. |
y |
a vector of responses observed at the covariate locations. |
N |
a vector of sample sizes at the covariate locations, when the responses have a binomial error structure. |
h |
a smoothing parameter to be used in the construction of the nonparametric
regression estimates. A normal kernel
function is used and |
type |
an indicator of whether the response variable is on a |
... |
other optional parameters are passed to the |
The first reference below describes the statistical methods used in the function. The test is an extension of one by Silverman (1986) for density estimation.
a list containing the following items
p |
the p-value for the test of the null hypothesis that the true curve is monotonic. |
hcrit |
the ‘critical’ smoothing parameter. This is the smallest value which, when applied to the observed data, makes the curve monotonic. |
h |
the smoothing parameter used for double-smoothing (see the reference below). |
a plot of the curves generated by the bootstrap procedure is produced,
unless the option display="none"
is set. Those curves which
are non-monotonic, and therefore contribute to the empirical p-value,
are drawn in red.
Bowman, A.W., Jones, M.C. and Gijbels, I. (1998). Testing monotonicity of regression. J.Comp.Graph.Stat. 7, 489-500.
## Not run: # Radiocarbon dating data with(radioc, { ind <- (Cal.age>5000 & Cal.age<6000) cal.age <- Cal.age[ind] rc.age <- Rc.age[ind] sm.monotonicity(cal.age, rc.age, method = "aicc", nboot = 200) }) # Hosmer & Lemeshow birth data with(birth, { sm.monotonicity(Lwt[Smoke == "N"], Low[Smoke == "N"], type = "binomial") }) ## End(Not run)