Fisher Exact Scanning for Dependency
Overview
Implements Fisher exact scanning (FES), a multiscale test of dependence for continuous or discrete bivariate data. The method scans nested binary partitions using Fisher's exact tests and combines evidence across windows and resolutions with Sidak, Bonferroni, and meta-analysis corrections. The methodology is described in Ma and Mao (2019) doi:10.1080/01621459.2017.1397522.
This is the first official CRAN release of FES, the reference R
implementation of Fisher exact scanning for dependency.
Package interface
- Converted the original scripts into an installable, documented R package.
- Renamed the public analysis function from
fisherScan()to the concise package-level interfacefes(). - Standardized the public spelling of the Sidak correction in the returned
Sidakcomponent and theplot.sidakargument. - Replaced the fixed
Figures/output switch withoutput.dir, so files are written only to a directory explicitly supplied by the user. - Added opt-in window-level results and structure plots so FES can locate and characterize dependencies in addition to testing for their presence.
Show all changes in 1.0Hide the rest of the changes in 1.0
Statistical and computational improvements
- Restored the intended active-resolution count in the global p-value calculation; a historical
sum()call with no argument always returned zero. - Added input validation, numerically stable Sidak corrections, bounded p-values, and safe handling of resolutions with no testable windows.
Visualization and examples
- Improved plotting and corrected the window-level Sidak adjustment used in plots. Scan panels now use colorblind-friendly shared scales, informative annotations, observation overlays, and high-contrast significance outlines.
- Added visual demos covering the original example, nonlinear dependence, localized dependence, dependency maps, local direction changes, and evidence across scanning resolutions.
- Added demos showing how FES learns local direction changes, circular structure, and alternating association patterns.
- Structure maps now default to a single automatically selected partition stratum, avoiding hard-to-read overlaps across resolution levels. Explicit stratum selection and an opt-in cross-resolution overlay remain available.
Quality and release infrastructure
- Added automated tests, package citation metadata, and continuous integration.
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK7 OK2026-07-23
Documentation
- Help pages
- 3 (1 internal)includes a package overview page
- Examples that run
- 100%1 run in a plain check
- Exported functions with examples
- 100%
- Documented parameters
- 73%
- Return-value docs
- 100%
- Help pages citing references
- 67%
Also includes 6 demo scripts (run with demo())
Downloads
Repository
- PRs merged (all time)
- 100%
- Median days to close, 50 most recently updated closed issues
- not measured
- Median days to close, 50 most recently updated closed PRs
- 0
4 development-tooling and community-health practices detected across 3 families in the upstream repository
Checks run against github.com/mastatlab/fes on 2026-10-18.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
Dependencies
Installing FES adds no packages beyond those that come with R.
Code & Tests
People & History
- 1.0Latest2026-07-22 · current release
- RR 4.6.0 released · 2026-04-24
Package metadata
- First published
- 2026-07-22
- Total releases
- 1 / 1 yrs
- License
- GPL (>= 3) OSI
- Minimum R
- ≥ 3.6.0
- Download size
- 19 KB
Cite
Cite this package
Run in R for the authors' entry:
citation("FES")The package provides a citation file, so citation() returns the authors' own entry.
It points to 10.1080/01621459.2017.1397522.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-21, which the citation names so these numbers can be found later. More on citing and the projects behind them.