← Back to all sparks
N

n2kanalysis

ANALYTICS
Velocity0.0

Generic Functions to Analyse Data from the Natura 2000 Monitoring

n2kanalysis has spent eight years wiring INLA models to an S3 bucket.

biodiversity-monitoringinlabayesian-modelss3-storageanalysis-pipeliner-package
Current state
n2kanalysis is the analysis framework behind INBO's nature monitoring networks, wrapping INLA model fitting with a manifest-driven pipeline whose intermediate objects live in S3. Capability has arrived in discrete lumps: hurdle models with imputation and a manifest-to-bash converter in 0.3.1, SPDE spatial elements in INLA models in 0.4.0, and in 0.4.1 a connect_inbo_s3() function that makes temporary credentials available to the R functions.
Where it's heading
Development is slow, institutional, and driven by the modeling needs of specific monitoring programmes rather than a product roadmap. The pattern across the window is a new model class when the ecology requires one, then a stretch of infrastructure work around storage, credentials and pipeline efficiency. The 0.4.1 release is characteristic — a credentials helper, better result retrieval, more tests and a code-style pass, with no modeling change at all. Much of the early history is recorded only as merge-commit titles, so the release record thins out the further back it goes.
Prediction
Expect the next substantive release to add another INLA model variant as a monitoring programme needs it, with S3 and credential handling continuing to absorb the maintenance effort in between.

Recent moves

  1. 4mo ago

    connect_inbo_s3() exposes temporary credentials to R

    A credentials helper brings temporary S3 access into the R session, which matters for a pipeline that keeps its intermediate objects in a bucket. get_result() improves alongside, plus test coverage and a code-style pass. Infrastructure work with no modeling change.

    View source ↗
  2. 1y ago

    INLA models with SPDE elements supported

    A one-line note carrying real weight: SPDE support brings continuous spatial random fields into the framework's INLA fitting, which is what monitoring data spread across a landscape usually needs. The record gives no detail on how it is exposed.

    View source ↗
  3. 2y ago

    fit_model() made more efficient

    An efficiency pass on the central fitting function, unquantified in the release record. Relevant for a pipeline that refits many models across a monitoring network.

    View source ↗
  4. 3y ago

    Hurdle models with imputation added

    The n2kHurdleImputed class and n2k_hurdle_imputed() bring hurdle models to imputed data, which is the combination count-based monitoring data with excess zeros and missing observations actually requires. Manifest_yaml_to_bash() converts a manifest into a runnable script, reinforcing the pipeline framing.

    View source ↗
  5. 7y ago

    Imputed data handling improvements

    Recorded only as a merge-commit title referencing improvements to imputed data, with no description of what changed. Nothing assessable in the release record.

    View source ↗
  6. 7y ago

    INLA models consolidated onto a single class

    An internal consolidation replacing separate INLA model classes with one. Structural tidying captured as a merge-commit title; no user-facing effect described.

    View source ↗