Arte SheetsLearn. Try. Understand.

Spatial Statistics & Ecology

Clark-Evans Nearest-Neighbor Dispersion Index (R) and Z-Score

Classify point patterns as Clustered (R < 1), Random Poisson CSR (R = 1), or Regular Lattice (up to R = 2.1491) using Clark and Evans’s (1954) nearest-neighbor formula.

Benchmark observed nearest-neighbor distances against Complete Spatial Randomness

Given N mapped events inside study area A (density lambda_d = N / A), Clark and Evans (1954) proved that under a homogeneous 2D Poisson process (Complete Spatial Randomness, CSR), the expected distance from a point to its nearest neighbor is r_exp = 1 / (2 * SQRT(lambda_d)), with standard error SE_r = 0.26136 / SQRT(N * lambda_d). Dividing observed mean nearest-neighbor distance r_obs by r_exp yields the dimensionless dispersion ratio R = r_obs / r_exp!

Verify the three canonical spatial regimes on N = 100 trees (B2) inside a 200m x 200m plot (A = 40,000 m^2 in B3, density lambda_d = 0.0025 m^-2): expected random spacing is r_exp = 1 / (2 * 0.05) = 10.0000 m and SE_r = 0.26136 / 0.50 = 0.5227 m. At observed r_obs = 6.50 m (B4), R = 0.6500 (< 1, clustered) with Z = (6.50 - 10.00) / 0.52272 = -6.6957; at r_obs = 10.00 m, R = 1.0000 (CSR); and under perfect hexagonal packing (r_obs = 21.4914 m), R reaches its theoretical 2D ceiling 2.1491!

Point-Pattern RegimeIndex Value R = r_obs / r_expEcological / Retail Interpretation
Complete CoincidenceR = 0.0000All points stacked on identical coordinates
Clustered Aggregation0 < R < 1.0000 (e.g., 0.6500)Contagion, habitat patches, or retail agglomeration
Complete Spatial Randomness (CSR)R = 1.0000 (Z = 0)Independent 2D Poisson point process
Hexagonal Lattice CeilingR = 2.1491Maximum territorial or plantation spacing

Clark-Evans Dispersion Ratio R = 2 * r_obs * SQRT(N / A) Formula

Compute density lambda_d = N / A and r_exp = 1 / (2 * SQRT(lambda_d)) inside LET, guarding against N < 2, non-positive area, or r_obs exceeding the geometric packing ceiling.

=LET(n_pts, B2, area_a, B3, r_obs, B4, IF(OR(n_pts < 2, area_a <= 0, r_obs < 0), "Invalid Spatial Input", LET(lam_d, n_pts / area_a, r_exp, 1 / (2 * SQRT(lam_d)), ROUND(r_obs / r_exp, 4))))

CSR Hypothesis Test Z-Score = (r_obs - r_exp) / (0.26136 / SQRT(N * lambda_d)) Formula

Note that without Donnelly edge correction, points near an unbuffered study boundary have slightly inflated nearest-neighbor distances — keep a guardrail note when N is small.

=LET(n_pts, B2, area_a, B3, r_obs, B4, IF(OR(n_pts < 2, area_a <= 0, r_obs < 0), "Invalid Spatial Input", LET(lam_d, n_pts / area_a, r_exp, 1 / (2 * SQRT(lam_d)), se_r, 0.26136 / SQRT(n_pts * lam_d), ROUND((r_obs - r_exp) / se_r, 4))))

Try the example

Use the original values or change them to test your understanding.

Further reading