Crandore Hub

spatpersist

Create Persistent Identifiers for Longitudinal Spatial Data

Creates dataset-local persistent identifiers for polygon units observed across time. Configurable overlap metrics, thresholds, and one-to-one matching rules identify continuity while separate identifiers track boundary versions and broader lineages through splits, mergers, and replacements. Candidate-link diagnostics, validation checks, registry reconciliation, and lineage summaries keep the resulting decisions inspectable and reproducible.

README

# spatpersist scalability benchmark

`benchmark-grid.R` measures the complete ID-creation pipeline on four-period
regular grids. Each period shifts polygons by 0.05 coordinate units, producing
a sparse and predictable overlap graph. Every unit should retain one identity,
and every result is checked with `validate_ids()`.

After installing the current source package, run:

```sh
R CMD INSTALL .
Rscript inst/benchmarks/benchmark-grid.R
```

Optional arguments set comma-separated grid sides, number of periods, and
repetitions:

```sh
Rscript inst/benchmarks/benchmark-grid.R 20,40,80 5 5
```

The default sides of 10, 20, 40, and 80 represent 100, 400, 1,600, and 6,400
units per period. Report the R, `sf`, GEOS, operating-system, and hardware
versions alongside benchmark results when comparing machines or releases.

## Development baseline

On the initial development machine, a single 6,400-row run containing 1,600
units in each of four periods fell from 2.89 seconds to 0.65 seconds after
removing unconditional WKT serialization and full-table candidate rescans.
This is an approximately 78 percent reduction. The 25,600-row case completed
in 3.22 seconds and produced 38,160 transition edges.

These measurements are diagnostic baselines, not performance guarantees.
Irregular, highly overlapping, or unusually complex polygons can produce many
more candidate intersections than this sparse grid.

Versions across snapshots

VersionRepositoryFileSize
0.1.0 rolling linux/jammy R-4.5 spatpersist_0.1.0.tar.gz 121.0 KiB
0.1.0 rolling linux/noble R-4.5 spatpersist_0.1.0.tar.gz 121.0 KiB
0.1.0 rolling source/ R- spatpersist_0.1.0.tar.gz 50.2 KiB
0.1.0 latest linux/jammy R-4.5 spatpersist_0.1.0.tar.gz 121.0 KiB
0.1.0 latest linux/noble R-4.5 spatpersist_0.1.0.tar.gz 121.0 KiB
0.1.0 latest source/ R- spatpersist_0.1.0.tar.gz 50.2 KiB
0.1.0 2026-04-23 source/ R- spatpersist_0.1.0.tar.gz 0 B

Dependencies (latest)

Imports

Suggests