geographical cross mapping cardinality
Usage
# S4 method for class 'sf'
gcmc(
data,
cause,
effect,
libsizes = NULL,
E = 3,
k = min(E^2),
tau = 1,
style = 1,
lib = NULL,
pred = NULL,
dist.metric = "L2",
threads = detectThreads(),
detrend = FALSE,
parallel.level = "low",
bidirectional = TRUE,
progressbar = TRUE,
nb = NULL
)
# S4 method for class 'SpatRaster'
gcmc(
data,
cause,
effect,
libsizes = NULL,
E = 3,
k = min(E^2),
tau = 1,
style = 1,
lib = NULL,
pred = NULL,
dist.metric = "L2",
threads = detectThreads(),
detrend = FALSE,
parallel.level = "low",
bidirectional = TRUE,
progressbar = TRUE,
grid.coord = TRUE
)Arguments
- data
observation data.
- cause
name of causal variable.
- effect
name of effect variable.
- libsizes
(optional) number of spatial units used (input needed:
vector- spatial vector,matrix- spatial raster).- E
(optional) embedding dimensions.
- k
(optional) number of nearest neighbors.
- tau
(optional) step of spatial lags.
- style
(optional) embedding style (
0includes current state,1excludes it).- lib
(optional) libraries indices (input requirement same as
libsizes).- pred
(optional) predictions indices (input requirement same as
libsizes).- dist.metric
(optional) distance metric (
L1: Manhattan,L2: Euclidean).- threads
(optional) number of threads to use.
- detrend
(optional) whether to remove the linear trend.
- parallel.level
(optional) level of parallelism,
loworhigh.- bidirectional
(optional) whether to examine bidirectional causality.
- progressbar
(optional) whether to show the progress bar.
- nb
(optional) neighbours list.
- grid.coord
(optional) whether to detrend using cell center coordinates (
TRUE) or row/column numbers (FALSE).
Value
A list
xmapcross mapping results
cscausal strength
varnamenames of causal and effect variables
bidirectionalwhether to examine bidirectional causality
References
Lyu, W., Dai, S., Song, Y., Zhao, W., Yi, W., Xiao, Y., Jia, N., 2026. Measuring causal strengths from spatial cross-sectional data with geographical cross mapping cardinality. International Journal of Geographical Information Science 1–23.
Examples
columbus = sf::read_sf(system.file("case/columbus.gpkg",package="spEDM"))
# \donttest{
g = spEDM::gcmc(columbus,"hoval","crime",E = 7,k = 19)
#>
Computing: [========================================] 100% (done)
#>
Computing: [========================================] 100% (done)
g
#> neighbors hoval->crime crime->hoval
#> 1 19 0.1634349 0.2770083
# }