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 ещё не реализован для входных данных класса Table x.

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

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

Вычисление счётчика гистограммы.

Когда x является вектором, функция подсчитывает количество элементов 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, то генерировать все комбинации элементов 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–2023 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.2.0/Basic-Statistical-Functions.html

Spec-Zone.ru

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