Skip to content

@addmaple/stats API Reference

@addmaple/stats API Reference - v0.2.4

Table of contents

Classes

Interfaces

Variables

Functions

Variables

BinningPresets

Const BinningPresets: Object

Presets for common histogram binning strategies.

Type declaration

NameType
autoFD(bins?: number) => HistogramBinningOptions
autoScott(bins?: number) => HistogramBinningOptions
autoSqrt(bins?: number) => HistogramBinningOptions
autoWithTailCollapse(k: number, bins?: number) => HistogramBinningOptions
equalFrequency(bins: number) => HistogramBinningOptions
fixedWidth(bins: number) => HistogramBinningOptions
deciles() => HistogramBinningOptions
quartiles() => HistogramBinningOptions
custom(edges: Float64Array | number[]) => HistogramBinningOptions

Defined in

quantiles.ts:394


WASM_NOT_INITIALIZED_ERROR

Const WASM_NOT_INITIALIZED_ERROR: "Wasm module not initialized. Call init() first."

The consistent error message for uninitialized WASM modules.

Defined in

shared.ts:149

Functions

covariance

covariance(x, y): number

Calculate the covariance between two arrays.

Parameters

NameType
xArrayLike<number>
yArrayLike<number>

Returns

number

Defined in

correlation.ts:66


corrcoeff

corrcoeff(x, y): number

Calculate the Pearson correlation coefficient.

Parameters

NameType
xArrayLike<number>
yArrayLike<number>

Returns

number

Defined in

correlation.ts:73


spearmancoeff

spearmancoeff(x, y): number

Calculate the Spearman rank correlation coefficient.

Parameters

NameType
xArrayLike<number>
yArrayLike<number>

Returns

number

Defined in

correlation.ts:80


descriptiveStats

descriptiveStats(data): DescriptiveStatsResult

Calculate a rich set of descriptive statistics for an array in one call.

This helper wraps core vector statistics (mean, variance, quartiles, skewness, etc.) and returns them in a single object.

Parameters

NameTypeDescription
dataArrayLike<number>Input array of numbers

Returns

DescriptiveStatsResult

An object with common descriptive statistics

Defined in

descriptive.ts:14


getDistributionsWasm

getDistributionsWasm(): DistributionsWasmModule | null

Get the current WASM module instance.

Returns

DistributionsWasmModule | null

Defined in

distributions.ts:14


setDistributionsWasm

setDistributionsWasm(mod): void

Set the WASM module instance.

Parameters

NameType
modDistributionsWasmModule

Returns

void

Defined in

distributions.ts:21


normal

normal(params?): DistributionHandle

Parameters

NameType
paramsNormalParams

Returns

DistributionHandle

Defined in

distributions.ts:76


gamma

gamma(params?): DistributionHandle

Parameters

NameType
paramsGammaParams

Returns

DistributionHandle

Defined in

distributions.ts:95


beta

beta(params?): DistributionHandle

Parameters

NameType
paramsBetaParams

Returns

DistributionHandle

Defined in

distributions.ts:113


studentT

studentT(params?): DistributionHandle

Parameters

NameType
paramsStudentTParams

Returns

DistributionHandle

Defined in

distributions.ts:132


chiSquared

chiSquared(params?): DistributionHandle

Parameters

NameType
paramsChiSquaredParams

Returns

DistributionHandle

Defined in

distributions.ts:150


fisherF

fisherF(params?): DistributionHandle

Parameters

NameType
paramsFisherFParams

Returns

DistributionHandle

Defined in

distributions.ts:167


exponential

exponential(params?): DistributionHandle

Parameters

NameType
paramsExponentialParams

Returns

DistributionHandle

Defined in

distributions.ts:185


poisson

poisson(params?): DistributionHandle

Parameters

NameType
paramsPoissonParams

Returns

DistributionHandle

Defined in

distributions.ts:201


binomial

binomial(params?): DistributionHandle

Parameters

NameType
paramsBinomialParams

Returns

DistributionHandle

Defined in

distributions.ts:218


uniform

uniform(params?): DistributionHandle

Parameters

NameType
paramsUniformParams

Returns

DistributionHandle

Defined in

distributions.ts:236


cauchy

cauchy(params?): DistributionHandle

Parameters

NameType
paramsCauchyParams

Returns

DistributionHandle

Defined in

distributions.ts:254


laplace

laplace(params?): DistributionHandle

Parameters

NameType
paramsLaplaceParams

Returns

DistributionHandle

Defined in

distributions.ts:272


logNormal

logNormal(params?): DistributionHandle

Parameters

NameType
paramsLogNormalParams

Returns

DistributionHandle

Defined in

distributions.ts:290


weibull

weibull(params?): DistributionHandle

Parameters

NameType
paramsWeibullParams

Returns

DistributionHandle

Defined in

distributions.ts:308


pareto

pareto(params?): DistributionHandle

Parameters

NameType
paramsParetoParams

Returns

DistributionHandle

Defined in

distributions.ts:326


triangular

triangular(params?): DistributionHandle

Parameters

NameType
paramsTriangularParams

Returns

DistributionHandle

Defined in

distributions.ts:345


inverseGamma

inverseGamma(params?): DistributionHandle

Parameters

NameType
paramsInverseGammaParams

Returns

DistributionHandle

Defined in

distributions.ts:364


negativeBinomial

negativeBinomial(params?): DistributionHandle

Parameters

NameType
paramsNegativeBinomialParams

Returns

DistributionHandle

Defined in

distributions.ts:382


init

init(options?): Promise<void>

Initialize the full wasm module (SIMD-aware).

This function must be called once before using any statistics functions. It's safe to call multiple times - it will only initialize once.

Parameters

NameTypeDescription
optionsObjectInitialization options
options.inline?booleanIf true, use the inline (base64) version of the WASM module.

Returns

Promise<void>

Defined in

index.ts:54


percentile

percentile(data, k, exclusive?): number

Calculate a percentile of an array.

Parameters

NameTypeDefault valueDescription
dataArrayLike<number>undefinedSorted or unsorted array
knumberundefinedPercentile (0 to 1)
exclusivebooleanfalseIf true, use exclusive percentile calculation

Returns

number

Defined in

quantiles.ts:58


percentileInclusive

percentileInclusive(data, k): number

Parameters

NameType
dataArrayLike<number>
knumber

Returns

number

Defined in

quantiles.ts:72


percentileExclusive

percentileExclusive(data, k): number

Parameters

NameType
dataArrayLike<number>
knumber

Returns

number

Defined in

quantiles.ts:86


percentileOfScore

percentileOfScore(data, score, strict?): number

Calculate the percentile rank of a score.

Parameters

NameTypeDefault value
dataArrayLike<number>undefined
scorenumberundefined
strictbooleanfalse

Returns

number

Defined in

quantiles.ts:103


qscore

qscore(data, score, strict?): number

Calculate the Q-score (quantile score) of a value.

Parameters

NameTypeDefault value
dataArrayLike<number>undefined
scorenumberundefined
strictbooleanfalse

Returns

number

Defined in

quantiles.ts:120


qtest

qtest(data, score, qLower, qUpper): boolean

Perform a quantile test.

Parameters

NameType
dataArrayLike<number>
scorenumber
qLowernumber
qUppernumber

Returns

boolean

Defined in

quantiles.ts:127


quartiles

quartiles(data): [number, number, number]

Calculate quartiles (Q1, Q2, Q3).

Parameters

NameType
dataArrayLike<number>

Returns

[number, number, number]

Defined in

quantiles.ts:144


iqr

iqr(data): number

Calculate interquartile range (IQR).

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

quantiles.ts:161


percentiles

percentiles(data, ps): Float64Array

Calculate multiple percentiles at once.

Parameters

NameType
dataArrayLike<number>
psArrayLike<number>

Returns

Float64Array

Defined in

quantiles.ts:178


quantiles

quantiles(data, qs): Float64Array

Calculate multiple quantiles at once.

Parameters

NameType
dataArrayLike<number>
qsArrayLike<number>

Returns

Float64Array

Defined in

quantiles.ts:185


weightedPercentile

weightedPercentile(data, weights, p): number

Calculate a weighted percentile.

Parameters

NameType
dataArrayLike<number>
weightsArrayLike<number>
pnumber

Returns

number

Defined in

quantiles.ts:211


weightedQuantiles

weightedQuantiles(data, weights, qs): Float64Array

Calculate multiple weighted quantiles at once.

Parameters

NameType
dataArrayLike<number>
weightsArrayLike<number>
qsArrayLike<number>

Returns

Float64Array

Defined in

quantiles.ts:233


weightedMedian

weightedMedian(data, weights): number

Calculate the weighted median.

Parameters

NameType
dataArrayLike<number>
weightsArrayLike<number>

Returns

number

Defined in

quantiles.ts:263


histogramEdges

histogramEdges(data, edges): Float64Array

Calculate a histogram with specified bin edges.

Parameters

NameType
dataArrayLike<number>
edgesArrayLike<number>

Returns

Float64Array

Defined in

quantiles.ts:304


histogramBinning

histogramBinning(data, options): HistogramBinningResult

Advanced histogram binning function.

Parameters

NameType
dataArrayLike<number>
optionsnumber | HistogramBinningOptions

Returns

HistogramBinningResult

Defined in

quantiles.ts:341


f64View

f64View(ptr, len, memory): Float64Array

Create a Float64Array view into WASM memory.

Parameters

NameType
ptrnumber
lennumber
memoryMemory

Returns

Float64Array

Defined in

shared.ts:9


f32View

f32View(ptr, len, memory): Float32Array

Create a Float32Array view into WASM memory.

Parameters

NameType
ptrnumber
lennumber
memoryMemory

Returns

Float32Array

Defined in

shared.ts:16


copyToWasmMemory

copyToWasmMemory(data, view): void

Efficiently copy data to WASM memory.

Performance note: Float64Array and plain Array<number> are fastest. Other array-likes may use a fallback loop which is slower.

Parameters

NameType
dataArrayLike<number>
viewFloat64Array

Returns

void

Defined in

shared.ts:26


copyToWasmMemoryF32

copyToWasmMemoryF32(data, view): void

Efficiently copy data to WASM memory (f32).

Parameters

NameType
dataArrayLike<number>
viewFloat32Array

Returns

void

Defined in

shared.ts:52


readWasmArray

readWasmArray(result, memory): Float64Array

Read an array from WASM memory and return a copy.

Parameters

NameType
resultArrayResult
memoryMemory

Returns

Float64Array

Defined in

shared.ts:72


runUnaryArrayOp

runUnaryArrayOp(data, kernel, wasm, memory): Float64Array

Run a unary array operation using a WASM kernel.

Parameters

NameType
dataArrayLike<number>
kernelArrayKernel
wasmBaseWasmModule
memoryMemory

Returns

Float64Array

Defined in

shared.ts:96


loadWasmModule

loadWasmModule(moduleDir, inline?): Promise<any>

Load a WASM module using wasm-bindgen-lite loaders.

Parameters

NameTypeDefault value
moduleDirstringundefined
inlinebooleanfalse

Returns

Promise<any>

Defined in

shared.ts:124


sum

sum(data): number

Calculate the sum of an array.

Parameters

NameTypeDescription
dataArrayLike<number>Array of numbers to sum

Returns

number

The sum of all elements

Defined in

stats.ts:78


mean

mean(data): number

Calculate the arithmetic mean (average) of an array.

Parameters

NameTypeDescription
dataArrayLike<number>Array of numbers

Returns

number

The mean value, or NaN if array is empty

Defined in

stats.ts:88


variance

variance(data): number

Calculate the population variance of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:95


sampleVariance

sampleVariance(data): number

Calculate the sample variance of an array (Bessel's correction).

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:102


stdev

stdev(data): number

Calculate the standard deviation (population) of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:111


sampleStdev

sampleStdev(data): number

Calculate the sample standard deviation of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:118


min

min(data): number

Calculate the minimum value in an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:127


max

max(data): number

Calculate the maximum value in an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:134


product

product(data): number

Calculate the product of all elements in an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:141


range

range(data): number

Calculate the range (max - min) of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:148


median

median(data): number

Calculate the median of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:155


mode

mode(data): number

Calculate the mode of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:162


geomean

geomean(data): number

Calculate the geometric mean of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:169


skewness

skewness(data): number

Calculate the skewness of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:176


kurtosis

kurtosis(data): number

Calculate the kurtosis of an array.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:183


stanMoment

stanMoment(data, k): number

Calculate the k-th standardized moment.

Parameters

NameType
dataArrayLike<number>
knumber

Returns

number

Defined in

stats.ts:190


coeffvar

coeffvar(data): number

Calculate the coefficient of variation.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:197


meandev

meandev(data): number

Calculate the mean absolute deviation.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:204


meddev

meddev(data): number

Calculate the median absolute deviation.

Parameters

NameType
dataArrayLike<number>

Returns

number

Defined in

stats.ts:211


pooledvariance

pooledvariance(data1, data2): number

Calculate the pooled variance of two arrays.

Parameters

NameType
data1ArrayLike<number>
data2ArrayLike<number>

Returns

number

Defined in

stats.ts:218


pooledstdev

pooledstdev(data1, data2): number

Calculate the pooled standard deviation of two arrays.

Parameters

NameType
data1ArrayLike<number>
data2ArrayLike<number>

Returns

number

Defined in

stats.ts:240


cumsum

cumsum(data): Float64Array

Calculate the cumulative sum.

Parameters

NameType
dataArrayLike<number>

Returns

Float64Array

Defined in

stats.ts:262


cumprod

cumprod(data): Float64Array

Calculate the cumulative product.

Parameters

NameType
dataArrayLike<number>

Returns

Float64Array

Defined in

stats.ts:279


diff

diff(data): Float64Array

Calculate the difference between consecutive elements.

Parameters

NameType
dataArrayLike<number>

Returns

Float64Array

Defined in

stats.ts:296


rank

rank(data): Float64Array

Calculate the rank of each element.

Parameters

NameType
dataArrayLike<number>

Returns

Float64Array

Defined in

stats.ts:313


deviation

deviation(data): Float64Array

Calculate the deviation from the mean for each element.

Parameters

NameType
dataArrayLike<number>

Returns

Float64Array

Defined in

stats.ts:330


histogram

histogram(data, binCount?): Float64Array

Calculate a histogram with specified number of bins.

Parameters

NameTypeDefault value
dataArrayLike<number>undefined
binCountnumber4

Returns

Float64Array

Defined in

stats.ts:347


cumreduce

cumreduce(data, initialValue, reducer): Float64Array

Cumulative reduction using a custom reducer function.

Note: This is implemented in JS to allow custom reducers.

Parameters

NameType
dataArrayLike<number>
initialValuenumber
reducer(acc: number, val: number) => number

Returns

Float64Array

Defined in

stats.ts:366


ttest

ttest(data, mu0): TestResult

Perform a one-sample t-test.

Parameters

NameType
dataArrayLike<number>
mu0number

Returns

TestResult

Defined in

tests.ts:54


ztest

ztest(data, mu0, sigma): TestResult

Perform a one-sample Z-test.

Parameters

NameType
dataArrayLike<number>
mu0number
sigmanumber

Returns

TestResult

Defined in

tests.ts:75


normalci

normalci(alpha, mean, se): number[]

Calculate a confidence interval for a normal distribution.

Parameters

NameType
alphanumber
meannumber
senumber

Returns

number[]

Defined in

tests.ts:96


tci

tci(alpha, mean, stdev, n): number[]

Calculate a confidence interval for a Student's t-distribution.

Parameters

NameType
alphanumber
meannumber
stdevnumber
nnumber

Returns

number[]

Defined in

tests.ts:105


regress

regress(x, y): RegressionResult

Perform simple linear regression.

Parameters

NameType
xArrayLike<number>
yArrayLike<number>

Returns

RegressionResult

Defined in

tests.ts:114


regressNaive

regressNaive(x, y): RegressionResult

Perform regression using the naive implementation.

Parameters

NameType
xArrayLike<number>
yArrayLike<number>

Returns

RegressionResult

Defined in

tests.ts:149


regressSimd

regressSimd(x, y): RegressionResult

Perform regression using the SIMD implementation.

Parameters

NameType
xArrayLike<number>
yArrayLike<number>

Returns

RegressionResult

Defined in

tests.ts:172


regressWasmKernels

regressWasmKernels(x, y): RegressionResult

Perform regression using WASM kernels.

Parameters

NameType
xArrayLike<number>
yArrayLike<number>

Returns

RegressionResult

Defined in

tests.ts:195


anovaFScore

anovaFScore(groups): number

Perform one-way ANOVA and return the F-score.

Parameters

NameType
groupsArrayLike<number>[]

Returns

number

Defined in

tests.ts:298


anovaTest

anovaTest(groups): AnovaResult

Perform one-way ANOVA and return full results.

Parameters

NameType
groupsArrayLike<number>[]

Returns

AnovaResult

Defined in

tests.ts:331


chiSquareTest

chiSquareTest(cat1, cat2, options?): ChiSquareResult

Perform Chi-Square test of independence.

Parameters

NameType
cat1string[]
cat2string[]
optionsObject
options.cardinality1?number
options.cardinality2?number

Returns

ChiSquareResult

Defined in

tests.ts:390


anovaFScoreCategorical

anovaFScoreCategorical(groups, values): number

Perform ANOVA with categorical labels.

Parameters

NameType
groupsstring[]
valuesnumber[]

Returns

number

Defined in

tests.ts:426


anovaTestCategorical

anovaTestCategorical(groups, values): AnovaResult

Perform full ANOVA test with categorical labels.

Parameters

NameType
groupsstring[]
valuesnumber[]

Returns

AnovaResult

Defined in

tests.ts:445


tukeyHsdCategorical

tukeyHsdCategorical(groups, values): TukeyHsdResult

Perform Tukey HSD test with categorical labels.

Parameters

NameType
groupsstring[]
valuesnumber[]

Returns

TukeyHsdResult

Defined in

tests.ts:471