Law of Large Numbers
Install and import#
npm install fintech-algorithmsimport { lawOfLargeNumbers } from "fintech-algorithms/foundations/sampling-estimation-and-statistical-inference/law-of-large-numbers";Signature#
lawOfLargeNumbers(input)Walks the running mean of input.sample one observation at a time and reports how far it has drifted from input.populationMean by the end.
Parameters#
| Name | Type | Notes |
|---|---|---|
input | D00Input | One record. sample is the observation stream in the order it arrives, and populationMean is the value the running mean should be converging on. estimates and alpha are validated for the whole family before dispatch.sample: non-empty list of finite numbers, at least two of them · estimates: non-empty list of finite numbers · alpha: strictly between 0 and 1 |
Returns#
D00Output
An object with cumulativeMeans (one running mean per observation), finalError (absolute gap between the last running mean and populationMean) and movesTowardTarget (true when the final gap is no wider than the gap after the first observation).
Errors#
- When sample or estimates is missing, empty, or contains a non-finite number — both are parsed for every topic in the family, whether or not the topic uses them — throws RangeError
- When sample holds fewer than two observations — throws RangeError
- When alpha is not strictly between zero and one — throws RangeError
Complexity: time O(n^2 + m),
space O(n + m).
Worked example#
verified This is the worked example published in the article, replayed by the test suite on every run. The output cannot drift.
Input#
{
"sample": [2, 3, 4, 3, 4],
"estimates": [3, 3.1, 3.2, 3.3, 3.4],
"populationMean": 3.2,
"alpha": 0.05,
"mseBenchmark": 0.1,
"nullMean": 3,
"alternativeMean": 3.5,
"practicalThreshold": 0.1,
"comparisons": 5
}Call#
lawOfLargeNumbers(input)Returns#
object with 2 fields: cumulativeMeans, finalError
{
"cumulativeMeans": [2, 2.5, 3, 3, 3.2],
"finalError": 0
}Diagrams#
How it works#
This page states the contract — how to call it correctly. The article explains the concept: why it works, and where it breaks.
References#
- Product and Process Comparisons — NIST/SEMATECH e-Handbook
- Confidence Intervals — NIST/SEMATECH e-Handbook
- Historical-example decision