[R] Smoothing z-values according to their x, y positions

David Winsemius dwinsemius at comcast.net
Thu Mar 20 02:40:17 CET 2008


"Emmanuel Levy" <emmanuel.levy at gmail.com> wrote in
news:e4654710803191554k4dfc2728g70bde35f41627754 at mail.gmail.com: 

> Dear Bert,
> 
> Thanks for your reply - I indeed saw a lot of functions using:
> help.search("smooth")
> 
> The problem is that most seem to not be very appropriate to what I'd
> like, or they seem extremely complicated (e.g. gma). I am probably
> missing something as I don't
> see how to use Loess. From my poor understanding, it seems to be for
> 2D data. Here I want to smooth the third "z" component.
> 
> In the meantime I adapted a function from Greg Warnes, which sort of
> does the job (although the smoothing is not very nice).
> So I'd be very happy to learn how do do something similar with
> loess! 
> 

You could consider at combining the kde2d() function in the MASS package 
within the VR bundle in combination with contour(). The example I 
followed came from MASS 2ed in chapter 5's section on density estimation. 
It is probably easiest to just copy the help example:

library(MASS)
attach(geyser)
f1 <- kde2d(duration[-272], duration[-1],
             h = rep(1.5, 2), n = 50, lims = c(0.5, 6, 0.5, 6))
contour(f1, xlab = "previous duration",
        ylab = "duration", levels  =  c(0.05, 0.1, 0.2, 0.4) )

I have also had success with Loader's locfit package.

-- 
David Winsemius



More information about the R-help mailing list