Column.variance

Nullable!double variance(size_t ddof = 1)

The percentage change (ADR-2026-10-23-08): (x[i] - x[i - n]) / x[i - n] as FLOAT64 - null for the first n slots and wherever the denominator slot is null or zero (the guarded-division rule; no infinities).

Parameters

nthe lag (at least 1)

Returns

the FLOAT64 percentage-change Series.

Throws

DataFrameException for n < 1 or non-numeric kinds.

Absolute values (ADR-2026-10-23-08): every numeric kind; float NaN passes with its payload; signed integer minima throw (the value does not fit its own type - cast to a wider kind first); validity is preserved.

Returns: the absolute-value Series.

Throws: DataFrameException on non-numeric kinds and signed integer minima. The cumulative sum (ADR-2026-10-23-10): nulls are skipped and positions kept; the accumulator carries across chunks in order - the chunk-ordered serial left fold, the same association at every thread count. Narrow integer and FLOAT32 inputs promote (INT64 / FLOAT64, the sum contract); integer wrapping in the wide kinds is documented.

Returns: the cumulative sum Series.

Throws: DataFrameException on non-numeric kinds. The q-th quantile of the valid values (ADR-2026-10-23-09): linear interpolation between the order statistics at floor(q*(n-1)) and ceil(q*(n-1)) under the total order (NaN participates as the greatest valid value; -0.0 keeps its bit when selected). FLOAT64 output; null on an empty or all-null column.

Params: q = the quantile position within [0, 1]

Returns: the FLOAT64 quantile.

Throws: DataFrameException for q outside [0, 1] or non-numeric kinds. The variance of the valid values (ADR-2026-10-23-09): the sample variance by default (ddof = 1), population with ddof = 0; ddof >= valid count yields null (undefined, not an error); empty/all-null yields null. Two-pass (mean, then ordered squared deviations); FLOAT64 output; negative round-off clamps to zero.

Params: ddof = the delta degrees of freedom

Returns: the FLOAT64 variance.

Throws: DataFrameException on non-numeric kinds.