exclude.too.far
Exclude prediction grid points too far from data
Description
Takes two arrays defining the nodes of a grid over a 2D covariate space and two arrays defining the location of data in that space, and returns a logical vector with elements TRUE
if the corresponding node is too far from data and FALSE
otherwise. Basically a service routine for vis.gam
and plot.gam
.
Usage
exclude.too.far(g1,g2,d1,d2,dist)
Arguments
g1 | co-ordinates of grid relative to first axis. |
g2 | co-ordinates of grid relative to second axis. |
d1 | co-ordinates of data relative to first axis. |
d2 | co-ordinates of data relative to second axis. |
dist | how far away counts as too far. Grid and data are first scaled so that the grid lies exactly in the unit square, and |
Details
Linear scalings of the axes are first determined so that the grid defined by the nodes in g1
and g2
lies exactly in the unit square (i.e. on [0,1] by [0,1]). These scalings are applied to g1
, g2
, d1
and d2
. The minimum Euclidean distance from each node to a datum is then determined and if it is greater than dist
the corresponding entry in the returned array is set to TRUE
(otherwise to FALSE
). The distance calculations are performed in compiled code for speed without storage overheads.
Value
A logical array with TRUE
indicating a node in the grid defined by g1
, g2
that is ‘too far’ from any datum.
Author(s)
Simon N. Wood [email protected]
References
https://www.maths.ed.ac.uk/~swood34/
See Also
Examples
library(mgcv) x<-rnorm(100);y<-rnorm(100) # some "data" n<-40 # generate a grid.... mx<-seq(min(x),max(x),length=n) my<-seq(min(y),max(y),length=n) gx<-rep(mx,n);gy<-rep(my,rep(n,n)) tf<-exclude.too.far(gx,gy,x,y,0.1) plot(gx[!tf],gy[!tf],pch=".");points(x,y,col=2)
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.