STIKhat | R Documentation |
Compute an estimate of the Space-Time Inhomogeneous K-function.
STIKhat(xyt, s.region, t.region, dist, times, lambda, correction="isotropic", infectious=FALSE)
xyt |
Coordinates and times (x,y,t) of the point pattern. |
s.region |
Two-column matrix specifying polygonal region containing all data locations. If |
t.region |
Vector containing the minimum and maximum values of the time interval. If |
dist |
Vector of distances u at which K(u,v) is computed. If missing, the maximum of |
times |
Vector of times v at which K(u,v) is computed. If missing, the maximum of |
lambda |
Vector of values of the space-time intensity function evaluated at the points (x,y,t) in S x T. If |
correction |
A character vector specifying the edge correction(s) to be applied among |
infectious |
Logical value. If |
Gabriel (2014) proposes the following unbiased estimator for the STIK-function, based on data giving the locations of events x_i: i = 1,...,n on a spatio-temporal region SxT, where S is an arbitrary polygon and T is a time interval:
K(u,v) = sum_{i = 1,...,n} sum_{j != i} 1/w_ij 1/(lambda(x_i) lambda(x_j)) 1{u_ij <= u ; t_j - t_i <= v},
where lambda(x_i) is the intensity at x_i = (s_i, t_i) and w_ij is an edge correction factor to deal with spatial-temporal edge effects. The edge correction methods implemented are:
isotropic
: w_ij = |S x T| w_ij^(s) w_ij^(t), where the temporal edge correction factor w_ij^(t) = 1 if both ends of the interval of length 2|t_i - t_j| centred at t_i lie within T and w_ij^(t) = 1/2 otherwise and w_ij^(s) is the proportion of the circumference of a circle centred at the location s_i with radius ||s_i - s_j|| lying in S (also called Ripley's edge correction factor).
border
: w_ij = (sum_{j = 1,...,n} 1{d(s_j, S) > u ; d(t_j, T) > v}/
lambda(x_j)) / 1{d(s_i, S) > u ; d(t_i, T) > v}, where d(s_i, S) denotes the distance between s_i and the boundary of S and d(t_i, T) the distance between t_i and the boundary of T.
modified.border
: w_ij = |S_(-u) x T_(-v)| / 1{d(s_i, S) > u ; d(t_i, T) > v}, where S_(-u) and T_(-v) are the eroded spatial and temporal region respectively, obtained by trimming off a margin of width u and v from the border of the original region.
translate
: w_ij = |S intersect S_(s_i - s_j)
x T intersect T_(t_i - t_j)|, where S_(s_i - s_j) and T_(t_ i - t_j)
are the translated spatial and temporal regions.
none
: No edge correction is performed and w_ij = |S x T|.
If parameter infectious = TRUE
, ony future events are considered and the estimator is, using an isotropic edge correction factor (Gabriel and Diggle, 2009):
K(u,v) = 1/|SxT| n/n_v sum_{i = 1,...,n_v} sum_{j = 1,...,n_v; j > i} 1/w_ij 1/(lambda(x_i) lambda(x_j)) 1{u_ij <= u} 1{t_j - t_i <= v}.
In this equation, the points x_i = (s_i, t_i) are ordered so that t_i < t_(i+1), with ties due to round-off error broken by randomly unrounding if necessary. To deal with temporal edge-effects, for each v, n_v denotes the number of events for which t_i <= T_1 - v, with T=[T_0, T_1]. To deal with spatial edge-effects, we use Ripley's method.
If lambda
is missing in argument, STIKhat
computes an estimate of the space-time (homogeneous)
K-function:
K(u,v) = |SxT|/(n_v (n-1)) sum_{i = 1,...,n_v} sum_{j = 1,...,n_v; j > i} 1/w_ij 1{u_ij <= u} 1{t_j - t_i <= v}
A list containing:
Khat |
|
Ktheo |
|
dist, times, infectious |
Parameters passed in argument. |
correction |
The name(s) of the edge correction method(s) passed in argument. |
Edith Gabriel <edith.gabriel@inrae.fr>
Baddeley A., Moller J. and Waagepetersen R. (2000). Non- and semi-parametric estimation of interaction in inhomogeneous point patterns. Statistica Neerlandica, 54, 329–350.
Baddeley, A., Rubak, E., Turner, R., (2015). Spatial Point Patterns: Methodology and Applications with R. CRC Press, Boca Raton.
Diggle P. , Chedwynd A., Haggkvist R. and Morris S. (1995). Second-order analysis of space-time clustering. Statistical Methods in Medical Research, 4, 124–136.
Gabriel E., Diggle P. (2009). Second-order analysis of inhomogeneous spatio-temporal point process data. Statistica Neerlandica, 63, 43–51.
Gabriel E., Rowlingson B., Diggle P. (2013). stpp: an R package for plotting, simulating and analyzing Spatio-Temporal Point Patterns. Journal of Statistical Software, 53(2), 1–29.
Gabriel E. (2014). Estimating second-order characteristics of inhomogeneous spatio-temporal point processes: influence of edge correction methods and intensity estimates. Methodology and computing in Applied Probabillity, 16(2), 411–431.
# First example data(fmd) data(northcumbria) FMD<-as.3dpoints(fmd[,1]/1000,fmd[,2]/1000,fmd[,3]) Northcumbria=northcumbria/1000 # estimation of the temporal intensity Mt<-density(FMD[,3],n=1000) mut<-Mt$y[findInterval(FMD[,3],Mt$x)]*dim(FMD)[1] # estimation of the spatial intensity h<-mse2d(as.points(FMD[,1:2]), Northcumbria, nsmse=50, range=4) h<-h$h[which.min(h$mse)] Ms<-kernel2d(as.points(FMD[,1:2]), Northcumbria, h, nx=5000, ny=5000) atx<-findInterval(x=FMD[,1],vec=Ms$x) aty<-findInterval(x=FMD[,2],vec=Ms$y) mhat<-NULL for(i in 1:length(atx)) mhat<-c(mhat,Ms$z[atx[i],aty[i]]) # estimation of the STIK function u <- seq(0,10,by=1) v <- seq(0,15,by=1) stik1 <- STIKhat(xyt=FMD, s.region=northcumbria/1000,t.region=c(1,200), lambda=mhat*mut/dim(FMD)[1], dist=u, times=v, infectious=TRUE) # plotting the estimation plotK(stik1) plotK(stik1,type="persp",theta=-65,phi=35) # Second example xyt=rpp(lambda=200) stik2=STIKhat(xyt$xyt,dist=seq(0,0.16,by=0.02), times=seq(0,0.16,by=0.02),correction=c("border","translate")) plotK(stik2,type="contour",legend=TRUE,which="translate")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.