CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-simple-statistics

A JavaScript implementation of descriptive, regression, and inference statistics

Pending
Overview
Eval results
Files

descriptive-statistics.mddocs/

Descriptive Statistics

Functions for calculating measures of central tendency, variability, and distribution shape.

Core Imports

import { 
  mean, median, mode, 
  standardDeviation, variance, 
  sampleVariance, sampleStandardDeviation,
  sampleSkewness, sampleKurtosis,
  rootMeanSquare,
  geometricMean, harmonicMean
} from "simple-statistics";

Measures of Central Tendency

mean (alias: average) { .api }

function mean(values: number[]): number;

Calculates the arithmetic mean (average) of an array of numbers.

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The arithmetic mean

Throws: Error if array is empty

import { mean, average } from "simple-statistics";

const data = [1, 2, 3, 4, 5];
const result = mean(data); // 3

// Alternative using alias
const result2 = average(data); // 3 - same function

median { .api }

function median(values: number[]): number;

Finds the middle value in a dataset. Automatically sorts the data.

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The median value

import { median } from "simple-statistics";

const data = [1, 3, 2, 5, 4];
const result = median(data); // 3

medianSorted { .api }

function medianSorted(values: number[]): number;

Optimized median calculation for pre-sorted arrays.

Parameters:

  • values: number[] - Pre-sorted array of numeric values

Returns: number - The median value

import { medianSorted } from "simple-statistics";

const sortedData = [1, 2, 3, 4, 5];
const result = medianSorted(sortedData); // 3

mode { .api }

function mode(values: number[]): number;

Finds the most frequently occurring value in a dataset.

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The mode (most frequent value)

import { mode } from "simple-statistics";

const data = [1, 2, 2, 3, 4, 2];
const result = mode(data); // 2

modeFast { .api }

function modeFast(values: number[]): number;

Fast mode calculation using optimized algorithm.

modeSorted { .api }

function modeSorted(values: number[]): number;

Mode calculation for pre-sorted arrays.

geometricMean { .api }

function geometricMean(values: number[]): number;

Calculates the geometric mean - the nth root of the product of n numbers.

Parameters:

  • values: number[] - Array of positive numeric values

Returns: number - The geometric mean

import { geometricMean } from "simple-statistics";

const data = [1, 2, 4, 8];
const result = geometricMean(data); // 2.828...

harmonicMean { .api }

function harmonicMean(values: number[]): number;

Calculates the harmonic mean - useful for rates and ratios.

Parameters:

  • values: number[] - Array of positive numeric values

Returns: number - The harmonic mean

import { harmonicMean } from "simple-statistics";

const rates = [10, 20, 30];
const result = harmonicMean(rates); // 16.36...

Measures of Variability

variance { .api }

function variance(values: number[]): number;

Calculates the population variance - average of squared deviations from the mean.

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The population variance

import { variance } from "simple-statistics";

const data = [1, 2, 3, 4, 5];
const result = variance(data); // 2

standardDeviation { .api }

function standardDeviation(values: number[]): number;

Calculates the population standard deviation - square root of variance.

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The population standard deviation

import { standardDeviation } from "simple-statistics";

const data = [1, 2, 3, 4, 5];
const result = standardDeviation(data); // 1.414...

sampleVariance { .api }

function sampleVariance(values: number[]): number;

Calculates the sample variance using n-1 denominator (Bessel's correction).

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The sample variance

import { sampleVariance } from "simple-statistics";

const sample = [1, 2, 3, 4, 5];
const result = sampleVariance(sample); // 2.5

sampleStandardDeviation { .api }

function sampleStandardDeviation(values: number[]): number;

Calculates the sample standard deviation using n-1 denominator.

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The sample standard deviation

import { sampleStandardDeviation } from "simple-statistics";

const sample = [1, 2, 3, 4, 5];
const result = sampleStandardDeviation(sample); // 1.58...

rootMeanSquare (alias: rms) { .api }

function rootMeanSquare(values: number[]): number;

Calculates the root mean square (quadratic mean).

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The root mean square

import { rootMeanSquare } from "simple-statistics";

const data = [1, 2, 3, 4, 5];
const result = rootMeanSquare(data); // 3.31...

Distribution Shape Measures

sampleSkewness { .api }

function sampleSkewness(values: number[]): number;

Measures the asymmetry of the probability distribution. Positive skew indicates a tail extending toward more positive values.

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The sample skewness

import { sampleSkewness } from "simple-statistics";

const data = [1, 2, 2, 3, 4, 7, 9];
const result = sampleSkewness(data); // positive value (right-skewed)

sampleKurtosis { .api }

function sampleKurtosis(values: number[]): number;

Measures the "tailedness" of the probability distribution relative to a normal distribution.

Parameters:

  • values: number[] - Array of numeric values

Returns: number - The sample kurtosis

import { sampleKurtosis } from "simple-statistics";

const data = [1, 2, 3, 4, 5];
const result = sampleKurtosis(data); // measure of tail weight

Helper Functions

addToMean { .api }

function addToMean(currentMean: number, n: number, newValue: number): number;

Updates the mean when adding a new value to the dataset.

subtractFromMean { .api }

function subtractFromMean(currentMean: number, n: number, value: number): number;

Updates the mean when removing a value from the dataset.

combineMeans { .api }

function combineMeans(mean1: number, n1: number, mean2: number, n2: number): number;

Combines means from two separate samples.

combineVariances { .api }

function combineVariances(variance1: number, mean1: number, n1: number, variance2: number, mean2: number, n2: number): number;

Combines variances from two separate samples.

Install with Tessl CLI

npx tessl i tessl/npm-simple-statistics

docs

array-operations.md

combinatorics.md

data-manipulation.md

descriptive-statistics.md

distributions.md

index.md

machine-learning.md

math-utilities.md

quantiles.md

regression.md

testing.md

tile.json