Spec-Zone.ru › Octave 9

26.3 Основные статистические функции

Octave поддерживает различные полезные статистические функции. Многие из них полезны в качестве начальных шагов при подготовке набора данных для дальнейшего анализа. Другие предоставляют меры, отличные от основных описательных статистик.

: y = center (x)
: y = center (x, dim)

Центрирует данные, вычитая их среднее значение.

Если x — вектор, вычитается его среднее значение.

Если x — матрица, описанная выше операция выполняется для каждого столбца.

Если задан необязательный аргумент dim, операция выполняется вдоль этого измерения.

Примечание по программированию: center имеет очевидное применение для нормализации статистических данных. Она также полезна для повышения точности общих численных вычислений. Если в наборе данных есть большое общее для всех значений число, можно вычесть среднее значение, выполнить вычисление, а затем прибавить среднее обратно, чтобы получить окончательный результат.

См. также: zscore.

: z = zscore (x)
: z = zscore (x, opt)
: z = zscore (x, opt, dim)
: [z, mu, sigma] = zscore (…)

Вычисляет Z-оценку x.

Если x — вектор, вычитается его среднее значение, а результат делится на стандартное отклонение. Если стандартное отклонение равно нулю, вместо него используется 1.

Необязательный параметр opt определяет способ нормализации при вычислении стандартного отклонения и имеет то же значение, что и соответствующий параметр для std.

Если x — матрица, вычисление выполняется вдоль первого измерения, размер которого не равен единице. Если задан третий необязательный аргумент dim, операция выполняется вдоль этого измерения.

Необязательные выходные переменные mu и sigma содержат среднее значение и стандартное отклонение.

См. также: mean, std, center.

: z = normalize (x)
: z = normalize (x, dim)
: z = normalize (…, method)
: z = normalize (…, method, option)
: z = normalize (…, scale, scaleoption, center, centeroption)
: [z, c, s] = normalize (…)

Возвращает нормализованные данные x, используя один из доступных методов масштабирования и центрирования.

normalize по умолчанию возвращает zscore x, то есть количество стандартных отклонений, на которое каждый элемент отличается от среднего значения x. Это эквивалентно центрированию по среднему значению данных и масштабированию по стандартному отклонению.

Возвращаемое значение z имеет тот же размер, что и x. Необязательные выходные переменные c и s содержат использованные при нормализации коэффициенты центрирования и масштабирования, такие что:

z = (x - c) ./ s

Если x — вектор, normalize выполняет операцию над данными в x.

Если x — матрица, normalize выполняет операцию отдельно для каждого столбца x.

Если x — N-мерный массив, normalize выполняет операцию отдельно вдоль первого измерения x, размер которого не равен единице.

Если задан необязательный второй аргумент dim, операция выполняется вдоль этого измерения.

normalize игнорирует значения NaN в x, как и параметр omitnan в std, mean и median.

Необязательные входные параметры method и option позволяют указать тип нормализации, выполняемой над x. Обратите внимание, что только параметры scale и center можно задавать вместе с любым из описанных ниже методов. Допустимые методы нормализации:

zscore

(По умолчанию) Нормализует элементы x по масштабированному расстоянию от центрального значения. Допустимые параметры:

std

(По умолчанию) Данные центрируются по mean (x) и масштабируются по стандартному отклонению.

robust

Данные центрируются по median (x) и масштабируются по медианному абсолютному отклонению.

norm

z — общая векторная норма x, а option — коэффициент нормализации p, определяющий тип векторной нормы согласно формуле:

z = [sum (abs (x) .^ p)] ^ (1/p)

p может быть любым положительным скаляром; в частности:

p = 1

x нормализуется по sum (abs (x)).

p = 2

(По умолчанию) x нормализуется по евклидовой норме, или длине вектора элементов.

P = Inf

x нормализуется по max (abs (x)).

scale

x масштабируется с коэффициентом, определяемым параметром option, который может быть числовым скаляром или одним из следующих значений:

std

(По умолчанию) x масштабируется по своему стандартному отклонению.

mad

x масштабируется по своему медианному абсолютному отклонению.

first

x масштабируется по своему первому элементу.

iqr

x масштабируется по своему межквартильному размаху.

range

x масштабируется так, чтобы попасть в диапазон, заданный параметром option в виде скалярного вектора-строки из двух элементов. Диапазон по умолчанию — [0, 1].

center

x сдвигается на величину, определяемую параметром option, который может быть числовым скаляром или одним из следующих значений:

mean

(По умолчанию) x сдвигается на mean (x).

median

x сдвигается на median (x).

medianiqr

x сдвигается на median (x) и масштабируется по межквартильному размаху.

Известные несовместимости с MATLAB:

  1. Параметр DataVariables пока не реализован для входных данных x класса Table.

См. также: zscore, iqr, norm, rescale, std, median, mean, mad.

: n = histc (x, edges)
: n = histc (x, edges, dim)
: [n, idx] = histc (…)

Вычисляет частоты попадания в интервалы гистограммы.

Если x — вектор, функция подсчитывает количество его элементов, попадающих в интервалы гистограммы, заданные параметром edges. Это должен быть вектор монотонно возрастающих значений, задающих границы интервалов гистограммы. n(k) содержит количество элементов x, для которых выполняется условие edges(k) <= x < edges(k+1). Последний элемент n содержит количество элементов x, в точности равных последнему элементу edges.

Если x — N-мерный массив, вычисление выполняется вдоль измерения dim. Если dim не задан, по умолчанию используется первое измерение, размер которого не равен единице.

Если запрошен второй выходной аргумент, также возвращается матрица индексов. Матрица idx имеет тот же размер, что и x. Каждый элемент idx содержит индекс интервала гистограммы, в который попал соответствующий элемент x.

См. также: hist.

unique Функция, описанная в разделе unique, часто полезна для статистики.

: c = nchoosek (n, k)
: c = nchoosek (set, k)

Вычисляет биномиальный коэффициент для n или перечисляет все возможные сочетания элементов из набора set.

Если n — скаляр, вычисляется биномиальный коэффициент для n и k, определяемый следующим образом:

/   \
 | n |    n (n-1) (n-2) ... (n-k+1)       n!
 |   |  = ------------------------- =  ---------
 | k |               k!                k! (n-k)!
 \   /

Это количество сочетаний из n элементов, взятых группами по k элементов.

Если первый аргумент — вектор set, генерируются все сочетания его элементов по k элементов; каждому сочетанию соответствует одна строка. Результат c имеет k столбцов и nchoosek (length (set), k) строк.

Например:

Сколькими способами можно сгруппировать три элемента в пары?

nchoosek (3, 2)
   ⇒ 3

Какие пары возможны?

nchoosek (1:3, 2)
   ⇒  1   2
       1   3
       2   3

Примечание по программированию: при вычислении биномиального коэффициента nchoosek работает только с неотрицательными целочисленными аргументами. Используйте bincoeff для нецелых и отрицательных скалярных аргументов или для одновременного вычисления нескольких биномиальных коэффициентов с векторными значениями n или k.

См. также: bincoeff, perms.

: P = perms (v)
: P = perms (v, "unique")

Генерирует все перестановки вектора v, помещая каждую перестановку в отдельную строку.

Если v упорядочен по возрастанию, результаты возвращаются в обратном лексикографическом порядке. Если v упорядочен иначе, результат также переставляется соответствующим образом. Поэтому для входных данных, упорядоченных по убыванию, результат будет в обычном лексикографическом порядке. Размер результата — factorial (n) * n, где n — длина v. Повторяющиеся элементы включаются в выходные данные.

Если задан необязательный аргумент "unique", возвращаются только уникальные перестановки; это требует меньше памяти и времени, чем вызов unique (perms (v), "rows").

Пример 1

perms ([1, 2, 3])
⇒
3   2   1
3   1   2
2   3   1
2   1   3
1   3   2
1   2   3

Пример 2

perms ([1, 1, 2, 2], "unique")
⇒
2   2   1   1
2   1   2   1
2   1   1   2
1   2   2   1
1   2   1   2
1   1   2   2

Примечание по программированию: если параметр "unique" не используется, длина v не должна превышать 10–12, чтобы ограничить потребление памяти. Даже при использовании "unique" число уникальных элементов в v не должно превышать 10–12.

См. также: permute, randperm, nchoosek.

: y = ranks (x)
: y = ranks (x, dim)
: y = ranks (x, dim, rtype)

Возвращает ранги (в смысле порядковой статистики) элементов x вдоль первого измерения, размер которого не равен единице, с учетом совпадающих значений.

Если задан необязательный аргумент dim, операция выполняется вдоль этого измерения.

Необязательный параметр rtype определяет способ обработки совпадающих значений. Во всех примерах ниже предполагаются входные данные [ 1, 2, 2, 4 ].

0 или "fractional" (по умолчанию) для дробного ранжирования (1, 2.5,

2.5, 4);

1 или "competition" для ранжирования соревнований (1, 2, 2, 4);
2 или "modified" для модифицированного ранжирования соревнований (1, 3, 3, 4);
3 или "ordinal" для порядкового ранжирования (1, 2, 3, 4);
4 или "dense" для плотного ранжирования (1, 2, 2, 3).

См. также: spearman, kendall.

: cnt = run_count (x, n)
: cnt = run_count (x, n, dim)

Подсчитывает возрастающие серии вдоль первого измерения x, размер которого не равен единице, длиной 1, 2, …, n-1 и не менее n.

Если задан необязательный аргумент dim, операция выполняется вдоль этого измерения.

См. также: runlength.

: count = runlength (x)
: [count, value] = runlength (x)

Находит длины всех серий одинаковых значений.

count — вектор, содержащий длины каждой серии повторяющихся значений.

Необязательный выходной параметр value содержит значение, повторявшееся в серии.

runlength ([2, 2, 0, 4, 4, 4, 0, 1, 1, 1, 1])
⇒   2   1   3   1   4

См. также: run_count.

© 1996–2026 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v9.4.0/Basic-Statistical-Functions.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API