std/stats
SourceEditСтатистическая аналитическая система для выполнения базового статистического анализа данных. Данные анализируются за один проход, когда они передаются в объект RunningStat или RunningRegress.
RunningStat вычисляет для одного набора данных
- n (количество данных)
- min (наименьшее значение)
- max (наибольшее значение)
- сумма
- среднее значение
- дисперсия
- varianceS (дисперсия выборки)
- стандартное отклонение
- standardDeviationS (стандартное отклонение выборки)
- асимметрия (третий статистический момент)
- эксцесс (четвёртый статистический момент)
RunningRegress вычисляет для двух наборов данных
- n (количество данных)
- наклон
- пересечение
- корреляция
Предоставлены процедуры для расчёта статистики для openArray.
Однако, если требуется более одного статистического расчёта, эффективнее передать данные один раз в объект RunningStat и затем вызвать многочисленные статистические процедуры для объекта RunningStat:
Пример:
import std/stats from std/math import almostEqual template `~=`(a, b: float): bool = almostEqual(a, b) var statistics: RunningStat # must be var statistics.push(@[1.0, 2.0, 1.0, 4.0, 1.0, 4.0, 1.0, 2.0]) doAssert statistics.n == 8 doAssert statistics.mean() ~= 2.0 doAssert statistics.variance() ~= 1.5 doAssert statistics.varianceS() ~= 1.714285714285715 doAssert statistics.skewness() ~= 0.8164965809277261 doAssert statistics.skewnessS() ~= 1.018350154434631 doAssert statistics.kurtosis() ~= -1.0 doAssert statistics.kurtosisS() ~= -0.7000000000000008
Импорты
- math
Типы
Процедуры
proc `$`(a: RunningStat): string {....raises: [], tags: [], forbids: [].}- Produces a string representation of the
RunningStat. The exact format is currently unspecified and subject to change. Currently it contains:- количество проб
- минимальные и максимальные значения
- сумму, среднее значение и стандартное отклонение.
proc `+`(a, b: RunningRegress): RunningRegress {....raises: [], tags: [], forbids: [].}-
Объединяет два объекта
RunningRegress.Полезно при параллельном анализе рядов данных и необходимости повторного объединения параллельных наборов результатов
Исходный код Редактировать proc `+`(a, b: RunningStat): RunningStat {....raises: [], tags: [], forbids: [].}-
Объединяет два объекта
RunningStat.Полезно при параллельном анализе рядов данных и необходимости повторного объединения параллельных наборов результатов.
Исходный код Редактировать proc `+=`(a: var RunningRegress; b: RunningRegress) {....raises: [], tags: [], forbids: [].}- Добавляет
RunningRegressbкa. Исходный код Редактировать proc `+=`(a: var RunningStat; b: RunningStat) {.inline, ...raises: [], tags: [], forbids: [].}- Добавляет
RunningStatbкa. Исходный код Редактировать proc clear(r: var RunningRegress) {....raises: [], tags: [], forbids: [].}- Сбрасывает
r. Исходный код Редактировать proc clear(s: var RunningStat) {....raises: [], tags: [], forbids: [].}- Сбрасывает
s. Исходный код Редактировать proc correlation(r: RunningRegress): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущую корреляцию двух наборов данных, добавленных в
r. Исходный код Редактировать proc intercept(r: RunningRegress): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущий коэффициент свободного члена
r. Исходный код Редактировать proc kurtosis(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущий эксцесс генеральной совокупности
s. Исходный код Редактировать proc kurtosis[T](x: openArray[T]): float
- Вычисляет эксцесс генеральной совокупности
x. Исходный код Редактировать proc kurtosisS(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущий эксцесс выборки
s. Исходный код Редактировать proc kurtosisS[T](x: openArray[T]): float
- Вычисляет эксцесс выборки
x. Исходный код Редактировать proc mean(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущее среднее значение
s. Исходный код Редактировать proc mean[T](x: openArray[T]): float
- Вычисляет среднее значение
x. Исходный код Редактировать proc push(r: var RunningRegress; x, y: float) {....raises: [], tags: [], forbids: [].}- Добавляет два значения
xиyдля обработки. Исходный код Редактировать proc push(r: var RunningRegress; x, y: int) {.inline, ...raises: [], tags: [], forbids: [].}-
Добавляет два значения
xиyдля обработки.
Исходный код Редактироватьxиyпреобразуются вfloat, и вызывается другая операция добавления. proc push(r: var RunningRegress; x, y: openArray[float | int])
- Добавляет два набора значений
xиyдля обработки. Исходный код Редактировать proc push(s: var RunningStat; x: float) {....raises: [], tags: [], forbids: [].}- Добавляет значение
xдля обработки. Исходный код Редактировать proc push(s: var RunningStat; x: int) {....raises: [], tags: [], forbids: [].}-
Добавляет значение
xдля обработки.
Исходный код Редактироватьxпросто преобразуется вfloat, и вызывается другая операция добавления. proc push(s: var RunningStat; x: openArray[float | int])
-
Добавляет все значения из
xдля обработки.Целочисленные значения из
Исходный код Редактироватьxпросто преобразуются вfloat, и вызывается другая операция добавления. proc skewness(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущий эксцесс генеральной совокупности
s. Исходный код Редактировать proc skewness[T](x: openArray[T]): float
- Вычисляет эксцесс генеральной совокупности
x. Исходный код Редактировать proc skewnessS(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущий эксцесс выборки
s. Исходный код Редактировать proc skewnessS[T](x: openArray[T]): float
- Вычисляет эксцесс выборки
x. Исходный код Редактировать proc slope(r: RunningRegress): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущий наклон
r. Исходный код Редактировать proc standardDeviation(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущее стандартное отклонение генеральной совокупности
s. Исходный код Редактировать proc standardDeviation[T](x: openArray[T]): float
- Вычисляет стандартное отклонение генеральной совокупности
x. Исходный код Редактировать
proc standardDeviationS(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущую выборочную стандартную ошибку
s. Исходный код Изменить proc standardDeviationS[T](x: openArray[T]): float
- Вычисляет выборочную стандартную ошибку
x. Исходный код Изменить proc variance(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущую дисперсию генеральной совокупности
s. Исходный код Изменить proc variance[T](x: openArray[T]): float
- Вычисляет дисперсию генеральной совокупности
x. Исходный код Изменить proc varianceS(s: RunningStat): float {....raises: [], tags: [], forbids: [].}- Вычисляет текущую выборочную дисперсию
s. Исходный код Изменить proc varianceS[T](x: openArray[T]): float
- Вычисляет выборочную дисперсию
x. Исходный код Изменить
© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/stats.html