Nothing
#### Tests for psi(), rho() etc
library(robust)
### Test internal consistency
## (1) rho'(x) = psi(x)
## (2) psi'(x) = psp(x)
## (3) chi(x) = pmin(R, rho(x)) ( *not* the definition for S-estimates !! )
## but really chi() = 1/2 psi()^2 Huber; for the others chi() == rho()
##
x <- seq(-4,4, length = 801)# large n
x. <- seq(-4,4, length = 2001)# larger n
verbose <- TRUE
for(ipsi in 1:3) { # later 1:4 -- ipsi = 4 nowhere documented
cat("ipsi = ", ipsi, "\n")
f.x <- cbind(psi = psi.weight(x, ips=ipsi), psp = psp.weight(x, ips=ipsi),
chi = chi.weight(x, ips=ipsi), rho = rho.weight(x, ips=ipsi))
rhoF <- splinefun(x,f.x[,"rho"])
psiF <- splinefun(x,f.x[,"psi"])
pspF <- splinefun(x,f.x[,"psp"])
## chiF <- splinefun(x,f.x[,"chi"])
p1 <- psiF(x., deriv=1); p. <- pspF(x.)
r1 <- rhoF(x., deriv=1); ps <- psiF(x.)
if(verbose) {
cat("psi'(.) = psp(.):", all.equal(p1, p., tol = 1e-6),"\n")
cat("rho'(.) = psi(.):", all.equal(r1, ps, tol = 1e-6),"\n")
## TODO: chi ?
}
stopifnot(all.equal(p1, p., tol = if(ipsi == 3) .05 else 1e-3),
all.equal(r1, ps, tol = 1e-4))
if(verbose) cat("\n---------------------\n\n")
}
### Plots --> ../man/weight.funs.Rd
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.