hch2d {spgam} | R Documentation |
~~ A concise (1-5 lines) description of what the function does. ~~
hch2d(hvals, pts, y, w = rep(1, length(y)))
hvals |
~~Describe hvals here~~ |
pts |
~~Describe pts here~~ |
y |
~~Describe y here~~ |
w |
~~Describe w here~~ |
~~ If necessary, more details than the description above ~~
~Describe the value returned If it is a LIST, use
comp1 |
Description of 'comp1' |
comp2 |
Description of 'comp2' |
...
....
~~further notes~~
~Make other sections like Warning with section{Warning }{....} ~
~~who you are~~
~put references to the literature/web site here ~
~~objects to See Also as help
, ~~~
##---- Should be DIRECTLY executable !! ---- ##-- ==> Define data, use random, ##-- or do help(data=index) for the standard data sets. ## The function is currently defined as function(hvals, pts, y, w = rep(1, length(y))) { # hvals contains 5, 10, 15 or 20 values of h, and we want the one which # minimises the CV criterion for kernel regression as in cvkreg2d. nh <- length(hvals) if((nh != 5) & (nh != 10) & (nh != 15) & (nh != 20)) { stop("length of hvals must be one of 5,10,15 and 20") } cv <- rep(NA, nh) i <- 1 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 2 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 3 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 4 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 5 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") if(nh > 5) { i <- 6 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 7 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 8 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 9 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 10 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") if(nh > 10) { i <- 11 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 12 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 13 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 14 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 15 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") if(nh > 15) { i <- 16 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 17 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 18 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 19 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") i <- 20 cv[i] <- cvkreg2d(hvals[i], pts, y, w) cat(i, hvals[i], cv[i], "\n") } } } if(any(is.na(cv))) warning("One of CV values is an NA") opt <- (1:nh)[cv == min(cv, na.rm = T)] ans <- hvals[sort(opt)] if(length(ans) > 1) { ans <- (max(ans)) } ans }