fintech-algorithms
Using a coding agent? Give it the skill: npx skills add IslamBaraka90/Fintech-Algorithms-Library What it does →

Percentiles, Quantiles, and Quartiles

Install and import#

bash
npm install fintech-algorithms
ts
import { percentilesQuantilesAndQuartiles } from "fintech-algorithms/foundations/location-ranking-and-exploratory-summaries/percentiles-quantiles-and-quartiles";

Signature#

percentilesQuantilesAndQuartiles(input)

Returns the three quartiles of a numeric series and the interquartile range between the first and third, using linear interpolation between neighbouring order statistics.

Parameters#

NameTypeNotes
input{ values: number[] }The observations to cut into quantiles, under the key values. The series is sorted internally, so the caller's order does not matter.

Returns#

{ quantiles: { '0.25': number; '0.5': number; '0.75': number }; iqr: number }

quantiles is keyed by the three cut points as strings, and iqr is the 0.75 quantile minus the 0.25 quantile.

Errors#

  • When input is null, an array, or not an object — throws TypeError
  • When values is missing, is not an array, or is empty — throws RangeError
  • When any entry of values does not coerce to a finite number — throws RangeError

Complexity: time O(n log n), space O(n).

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#

input
{
  "values": [1, 2, 2, 4, 9],
  "weights": [1, 1, 2, 1, 1],
  "trimProportion": 0.2,
  "bins": 4
}

Call#

percentilesQuantilesAndQuartiles(input)

Returns#

object with 2 fields: quantiles, iqr

{
  "quantiles": {
    "0.25": 2,
    "0.5": 2,
    "0.75": 4
  },
  "iqr": 2
}

Diagrams#

Percentiles, Quantiles, and Quartiles — article hero
Percentiles, Quantiles, and Quartiles — calculation ledger
Percentiles, Quantiles, and Quartiles — comparison map
Percentiles, Quantiles, and Quartiles — concept anatomy
Percentiles, Quantiles, and Quartiles — mistake contrast
Percentiles, Quantiles, and Quartiles — scenario map

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.

Read the article →

References#

  • Percentile Definitions
  • percentile
  • Sample Quantiles in Statistical Packages
  • Historical-example decision

The rest of the Location, Ranking, and Exploratory Summaries family#