The Anomaly Network characteristic layer
Description
# The Anomaly Network characteristic layer, v1.0.0
A derived dataset over 43,684 first-hand accounts of experiences people could not explain, drawn from two public archives (NUFORC, 38,663 accounts; BFRO, 5,021).
## What is here
**accounts.csv** (43,684 rows). One row per account: source, the id it carries in that source, date, hour, coordinates, place, and the set of characteristics extracted from what the person wrote.
**characteristics.csv** (63 rows). The vocabulary. For each characteristic: plain-English name, family, how many accounts contain it, what percentage of the corpus that is, and its inverse document frequency. The IDF is the useful column. Two accounts sharing "a light" means nothing; two sharing "three knocks" means a great deal, and the IDF is the difference.
**clusters.csv** (263 rows). Same-date, same-1-degree-cell groups of three or more accounts, each with: - `wording_independence`: 1 minus the largest vocabulary overlap between any two accounts in the cluster. Near 1, everyone described it in their own words. Low, at least two accounts substantially repeat each other, which usually means a common source rather than a common experience. - `coherence`: witnesses, place diversity, wording independence and feature agreement combined into one score. - `ordinary_causes_found`: how many candidate mundane explanations the public record offers for that night (fireball, earthquake, full moon, Venus, a date when lanterns and fireworks are common). Zero is the interesting value.
**184 of the 263 clusters have no ordinary cause on the public record.** That is the single number this dataset exists to make checkable, and it is computed rather than asserted: read `clusters.csv` and count the rows where `ordinary_causes_found` is 0. Read the limits below before quoting it, particularly the one about catalogue coverage.
## What is NOT here, and why
**The account text.** The narratives belong to NUFORC, to BFRO, and to the people who wrote them. Republishing tens of thousands of them as a bulk download is not ours to do. Every row carries `source` and `source_ref` so the original can be found at the archive that holds it.
## Honest limits
- Characteristics are extracted by curated regular expressions, not by a model. That makes every match explainable and every miss silent. Recall is not measured; precision was checked by sampling. - The corpus is two archives, one about lights in the sky and one about something in the woods. It is North America heavy and it contains effectively nothing about sleep paralysis, the hat man, or shared false memory, which are among the most searched and least collected experiences there are. - Clusters use a 1-degree cell and an exact date match. Multi-night events fragment. A correspondence across years cannot be a cluster by construction. - `ordinary_causes_found` reflects what public catalogues cover. Fireball data begins in 2015; earthquake coverage is uneven historically. A zero on an old night partly reflects thinner records, not only a stranger event.
## Licence
CC BY 4.0. Use it, build on it, please cite it.
## Citation
The Anomaly Network (2026). *The Anomaly Network characteristic layer* (v1.0.0) [Data set]. https://theanomalynetwork.com
## Method
Described at https://theanomalynetwork.com/method and generated by `seed/make_dataset.py` in the site's own pipeline, so every number here can be regenerated and argued with.