26.1 Описательная статистика
Одна из основных целей описательной статистики – кратко представить суть большого набора данных. Octave предоставляет функции mean, median и mode, которые обобщают набор данных, используя всего одно число, соответствующее центральной тенденции данных.
- : y = mean (x) ¶
- : y = mean (x, 'all') ¶
- : y = mean (x, dim) ¶
- : y = mean (…, 'outtype') ¶
- : y = mean (…, 'nanflag') ¶
-
Вычислить среднее значение элементов x.
- Если x – это вектор, то
mean (x)возвращает среднее значение элементов в x, определяемое какmean (x) = SUM_i x(i) / N
где N – количество элементов в векторе x.
- Если x – это матрица, то
meanвозвращает строчный вектор со средним значением каждого столбца в x. - Если x – многомерный массив, то
meanработает вдоль первой размерности, не являющейся единичной, в x.
Необязательный вход dim заставляет
meanработать по указанным размерностям. dim может быть скалярной размерностью или вектором не повторяющихся размерностей. Размерности должны быть положительными целыми числами, и среднее значение вычисляется для среза массива, определенного dim.Указание размерности
"all"заставитmeanработать со всеми элементами x и эквивалентноmean (x(:)).Необязательный вход outtype определяет тип данных, который будет возвращен. Допустимые значения:
'default': Выходной тип – double, если входной тип не-
single, в противном случае выходной тип – single.
'double': Выходной тип – double.'native': Выходной тип – такой же, как у входного-
(
class (x)), если входной тип не логический, то выходной тип – double.
Необязательный вход nanflag указывает, включать ли/исключать ли значения NaN при вычислении. По умолчанию значения NaN включаются в вычисление (nanflag имеет значение
'includenan'). Чтобы исключить значения NaN, установите значение nanflag в'omitnan'. - Если x – это вектор, то
- : y = median (x) ¶
- : y = median (x, dim) ¶
-
Вычислить медианное значение элементов вектора x.
Когда элементы x отсортированы, скажем
s = sort (x), медиана определяется как| s(ceil(N/2)) N odd median (x) = | | (s(N/2) + s(N/2+1))/2 N evenЕсли x – дискретного типа, например целое число или логическое, то в случае чётного N, округляется вверх (или к
true).Если x – это матрица, вычислить медианное значение для каждого столбца и вернуть их в строчном векторе.
Если задан необязательный аргумент dim, работать по этой размерности.
- : m = mode (x) ¶
- : m = mode (x, dim) ¶
- : [m, f, c] = mode (…) ¶
-
Вычислить наиболее часто встречающееся значение в наборе данных (моду).
modeопределяет частоту значений вдоль первой размерности, не являющейся единичной, и возвращает значение с наибольшей частотой. Если два или более значения имеют одинаковую частоту,modeвозвращает наименьшее.Если необязательный аргумент dim задан, работать по этой размерности.
Возвращаемая переменная f – это количество повторений моды в наборе данных.
Ячейковый массив c содержит все элементы с максимальной частотой.
Использование только одного числа, например среднего арифметического, для представления всего набора данных может не дать точного представления данных. Один из способов характеризации подгонки – измерение дисперсии данных. Octave предоставляет несколько функций для измерения дисперсии.
- : [s, l] = bounds (x) ¶
- : [s, l] = bounds (x, dim) ¶
- : [s, l] = bounds (…, "nanflag") ¶
-
Возвращает наименьшие и наибольшие значения входных данных x.
Если x – вектор, границы вычисляются по элементам x. Если x – матрица, границы вычисляются для каждого столбца. Для многомерного массива границы вычисляются по первой размерности, не являющейся единичной.
Если задан необязательный аргумент dim, работать по этой размерности.
Необязательный аргумент
"nanflag"по умолчанию"omitnan", который не включает значения NaN в результат. Если аргумент"includenan"задан, и присутствует NaN, то результат для элементов наименьшего (s) и наибольшего (l) будет NaN.Границы – быстро вычисляемая мера дисперсии набора данных, но менее точная, чем
iqr, если есть выбросы данных.
- : y = range (x) ¶
- : y = range (x, dim) ¶
-
Возвращает размах, т.е. разницу между максимальным и минимальным значениями входных данных.
Если x – вектор, размах вычисляется по элементам x. Если x – матрица, размах вычисляется по каждому столбцу x.
Если задан необязательный аргумент dim, работать по этой размерности.
Размах – быстро вычисляемая мера дисперсии набора данных, но менее точна, чем
iqr, если есть выбросы данных.
- : Z = iqr (x) ¶
- : Z = iqr (x, dim) ¶
-
: Z = iqr (x,
"ALL") ¶ -
Возвращает межквартильный размах x, определенный как расстояние между 25-м и 75-м процентилями значений x, вычисленное с помощью: quantile (x, [0.25 0.75])
Если x – вектор,
iqr (x)будет работать с данными в x.Если x – матрица,
iqr (x)будет работать независимо с каждым столбцом в x, возвращая строчный вектор Z.Если x – n-мерный массив,
iqr (x)будет работать независимо по первой размерности, не являющейся единичной, в x, возвращая массив Z такой же формы, как x, но с размерностью, не являющейся единичной, уменьшенной до 1.Необязательная переменная dim может быть использована для принудительного применения
iqrпо указанной размерности. dim может быть скалярной размерностью или вектором не повторяющихся размерностей, по которым следует выполнять операции. В любом случае dim должны быть положительными целыми числами. Вектор dim конкатенирует все указанные размерности для независимой работыiqr.Указание размерности
"ALL"заставитiqrработать со всеми элементами x и эквивалентноiqr (x(:)). Аналогично, указание вектора размерности, включающего все размерности, не являющиеся единичными, в x, эквивалентноiqr (x,."ALL")Если x – скаляр или указаны только единичные размерности для dim, вывод будет
zeros (size (x)).В качестве меры дисперсии межквартильный размах меньше подвержен влиянию выбросов, чем
rangeилиstd.
- : y = mad (x) ¶
- : y = mad (x, opt) ¶
- : y = mad (x, opt, dim) ¶
-
Вычислить среднее или медианное абсолютное отклонение элементов x.
Среднее абсолютное отклонение определяется как
mad = mean (abs (x - mean (x)))
Медианное абсолютное отклонение определяется как
mad = median (abs (x - median (x)))
Если x является матрицей, вычислить
madдля каждого столбца и вернуть результаты в строчном векторе. Для многомерного массива вычисление выполняется по первому неединичному измерению.Необязательный аргумент opt определяет, вычисляется ли среднее или медианное абсолютное отклонение. По умолчанию значение 0, что соответствует среднему абсолютному отклонению; значение 1 соответствует медианному абсолютному отклонению.
Если необязательный аргумент dim задан, операция выполняется вдоль этого измерения.
В качестве меры дисперсии
madменьше подвержена влиянию выбросов, чемstd.
- : y = meansq (x) ¶
- : y = meansq (x, dim) ¶
-
Вычислить средний квадрат элементов вектора x.
Средний квадрат определяется как
meansq (x) = 1/N SUM_i x(i)^2
где N — длина вектора x.
Если x является матрицей, вернуть строчный вектор, содержащий средний квадрат каждого столбца.
Если необязательный аргумент dim задан, операция выполняется вдоль этого измерения.
- : y = std (x) ¶
- : y = std (x, w) ¶
- : y = std (x, w, dim) ¶
-
: y = std (x, w,
"ALL") ¶ - : [y, mu] = std (…) ¶
-
Вычислить стандартное отклонение элементов вектора x.
Стандартное отклонение определяется как
std (x) = sqrt ( 1/(N-1) SUM_i (x(i) - mean(x))^2 )
где N — количество элементов вектора x.
Если x является массивом, вычислить стандартное отклонение для каждого столбца и вернуть их в строчном векторе (или для n-мерного массива результат возвращается как массив размерности 1 x n x m x …).
Необязательный аргумент w определяет используемую схему взвешивания. Допустимые значения:
- 0 [по умолчанию]:
-
Нормализация с N-1. Это обеспечивает квадратный корень из наилучшей несмещённой оценки дисперсии.
- 1:
-
Нормализация с N. Это обеспечивает квадратный корень из второго момента относительно среднего значения.
- вектор:
Вычислить взвешенное стандартное отклонение с неотрицательными скалярными весами. Длина w должна быть равна размеру x по измерению dim.
Если N равно 1, значение W игнорируется, и используется нормализация по N.
Необязательная переменная dim заставляет
stdработать по указанному измерению (измерениям). dim может быть скалярным измерением или вектором не повторяющихся измерений. Измерения должны быть положительными целыми числами, и стандартное отклонение вычисляется над фрагментом массива, определяемым dim.Указание измерения
"all"заставитstdработать со всеми элементами x и эквивалентноstd (x(:)).Когда dim является вектором или
"all", w должно быть либо 0, либо 1.Необязательная вторая выходная переменная mu содержит среднее или взвешенное среднее, используемое для вычисления y, и будет иметь тот же размер, что и y.
Помимо знания размера дисперсии, полезно знать форму набора данных. Например, сгруппированы ли данные слева или справа от среднего значения? Octave предоставляет несколько общих мер для описания формы набора данных. Octave также может вычислять моменты, что позволяет разрабатывать произвольные меры формы.
- : v = var (x) ¶
- : v = var (x, w) ¶
- : v = var (x, w, dim) ¶
-
: v = var (x, w,
"ALL") ¶ - : [v, m] = var (…) ¶
-
Вычислить дисперсию элементов вектора x.
Дисперсия определяется как
var (x) = 1/(N-1) SUM_i (x(i) - mean(x))^2
где N — длина вектора x.
Если x является массивом, вычислить дисперсию для каждого столбца и вернуть их в строчном векторе (или для n-мерного массива результат возвращается как массив размерности 1 x n x m x …).
Необязательный аргумент w определяет используемую схему взвешивания. Допустимые значения:
- 0 [по умолчанию]:
-
Нормализация с N-1. Это обеспечивает квадратный корень из наилучшей несмещённой оценки дисперсии.
- 1:
-
Нормализация с N. Это обеспечивает квадратный корень из второго момента относительно среднего значения.
- вектор:
Вычислить взвешенную дисперсию с неотрицательными скалярными весами. Длина w должна быть равна размеру x по измерению dim.
Если N равно 1, значение W игнорируется, и используется нормализация по N.
Необязательная переменная dim заставляет
varработать по указанному измерению (измерениям). dim может быть скалярным измерением или вектором не повторяющихся измерений. Измерения должны быть положительными целыми числами, и дисперсия вычисляется над фрагментом массива, определяемым dim.Указание измерения
"all"заставитvarработать со всеми элементами x и эквивалентноvar (x(:)).Когда dim является вектором или
"all", w должно быть либо 0, либо 1.Необязательная вторая выходная переменная mu содержит среднее или взвешенное среднее, используемое для вычисления v, и будет иметь тот же размер, что и v.
- : y = skewness (x) ¶
- : y = skewness (x, flag) ¶
- : y = skewness (x, flag, dim) ¶
-
Вычислить выборочную асимметрию элементов x.
Выборочная асимметрия определяется как
mean ((x - mean (x)).^3) skewness (X) = ------------------------. std (x).^3Необязательный аргумент flag управляет используемой нормализацией. Если flag равно 1 (значение по умолчанию, используется, когда flag опущен или пуст), вернуть выборочную асимметрию, как определено выше. Если flag равно 0, вернуть скорректированный коэффициент асимметрии:
sqrt (N*(N-1)) mean ((x - mean (x)).^3) skewness (X, 0) = -------------- * ------------------------. (N - 2) std (x).^3где N — длина вектора x.
Скорректированный коэффициент асимметрии получается заменой выборочных второго и третьего центральных моментов их скорректированными версиями.
Если x является матрицей или, более обобщённо, многомерным массивом, вернуть асимметрию по первому неединичному измерению. Если необязательный аргумент dim задан, операция выполняется по этому измерению.
- : y = kurtosis (x) ¶
- : y = kurtosis (x, flag) ¶
- : y = kurtosis (x, flag, dim) ¶
-
Вычислить выборочную эксцесс элементов x.
Выборочная эксцесс определяется как
mean ((x - mean (x)).^4) k1 = ------------------------ std (x).^4Необязательный аргумент flag управляет используемой нормализацией. Если flag равен 1 (значение по умолчанию, используется, когда flag опущен или пуст), возвращается выборочная эксцесс, как определено выше. Если flag равен 0, возвращается коэффициент эксцесса, скорректированный с учётом смещения:
N - 1 k0 = 3 + -------------- * ((N + 1) * k1 - 3 * (N - 1)) (N - 2)(N - 3)где N - длина вектора x.
Коэффициент эксцесса, скорректированный с учётом смещения, получается заменой выборочных второго и четвёртого центральных моментов их несмещёнными версиями. Это несмещённая оценка эксцесса генеральной совокупности для нормальных генеральных совокупностей.
Если x является матрицей или, более общим образом, многомерным массивом, возвращает эксцесс по первой неединичной размерности. Если необязательный аргумент dim задан, работа выполняется по этой размерности.
- : m = moment (x, p) ¶
- : m = moment (x, p, type) ¶
- : m = moment (x, p, dim) ¶
- : m = moment (x, p, type, dim) ¶
- : m = moment (x, p, dim, type) ¶
-
Вычислить центральную момент p-го порядка вектора x.
p-ый центральный момент x определяется как:
1/N SUM_i (x(i) - mean(x))^p
где N - длина вектора x.
Если x является матрицей, возвращает строковый вектор, содержащий p-ый центральный момент каждого столбца.
Если необязательный аргумент dim задан, работа выполняется по этой размерности.
Необязательный строковый аргумент type указывает тип вычисляемого момента. Допустимые значения:
"c"-
Центральный момент (по умолчанию).
"a""ac"-
Абсолютный центральный момент. Момент относительно среднего значения, игнорируя знак, определяется как
1/N SUM_i (abs (x(i) - mean(x)))^p
"r"-
Собственный момент. Момент относительно нуля, определяется как
moment (x) = 1/N SUM_i x(i)^p
"ar"-
Абсолютный собственный момент. Момент относительно нуля, игнорируя знак, определяется как
1/N SUM_i ( abs (x(i)) )^p
Если заданы как type, так и dim, они могут быть указаны в любом порядке.
- : q = quantile (x) ¶
- : q = quantile (x, p) ¶
- : q = quantile (x, p, dim) ¶
- : q = quantile (x, p, dim, method) ¶
-
Для выборки x вычислить квантили q, соответствующие кумулятивным вероятностям в p. Все нечисловые значения (NaN) x игнорируются.
Если x является матрицей, вычислить квантили для каждого столбца и вернуть их в матрице, так что i-я строка q содержит p(i)-ые квантили каждого столбца x.
Если p не указан, вернуть квантили для
[0.00 0.25 0.50 0.75 1.00]. Необязательный аргумент dim определяет размерность, по которой вычисляются квантили. Если dim опущен, он по умолчанию равен первой неединичной размерности.Доступные методы вычисления выборочных квантилей — это девять методов, используемых в R (https://www.r-project.org/). Значение по умолчанию method = 5.
Дисперсные методы нахождения выборочных квантилей 1, 2 и 3
- Метод 1: Обратная функция эмпирического распределения.
- Метод 2: Аналогичен методу 1, но с усреднением при разрывах.
- Метод 3: Определение SAS: ближайшая чётная порядковая статистика.
Непрерывные методы нахождения выборочных квантилей от 4 до 9, где p(k) — функция линейной интерполяции, учитывающая характерной функции распределения каждого метода.
- Метод 4: p(k) = k / N. То есть, линейная интерполяция эмпирической функции распределения, где N - длина P.
- Метод 5: p(k) = (k - 0,5) / N. То есть, кусочно-линейная функция, где узлы — значения, находящиеся посередине шагов эмпирической функции распределения.
- Метод 6: p(k) = k / (N + 1).
- Метод 7: p(k) = (k - 1) / (N - 1).
- Метод 8: p(k) = (k - 1/3) / (N + 1/3). Полученные оценки квантилей приблизительно медианно-несмещённые независимо от распределения x.
- Метод 9: p(k) = (k - 3/8) / (N + 1/4). Полученные оценки квантилей приблизительно несмещённые для ожидаемой порядковой статистики, если x нормально распределена.
Хайнман и Фэн (1996) рекомендуют метод 8. Maxima, S и R (версии до 2.0.0) по умолчанию используют 7. Minitab и SPSS используют метод 6. MATLAB использует метод 5.
Ссылки:
- Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
- Hyndman, R. J. and Fan, Y. (1996) Sample quantiles in statistical packages, American Statistician, 50, 361–365.
- R: Язык и среда для статистических вычислений; https://cran.r-project.org/doc/manuals/fullrefman.pdf.
Примеры:
x = randi (1000, [10, 1]); # Create empirical data in range 1-1000 q = quantile (x, [0, 1]); # Return minimum, maximum of distribution q = quantile (x, [0.25 0.5 0.75]); # Return quartiles of distribution
См. также: prctile.
- : q = prctile (x) ¶
- : q = prctile (x, p) ¶
- : q = prctile (x, p, dim) ¶
-
Для выборки x вычислить квантили q, соответствующие кумулятивным вероятностям p в процентах.
Если x является матрицей, вычислить процентили для каждого столбца и вернуть их в матрице, так что i-я строка q содержит p(i)-ые процентили каждого столбца x.
Если p не указан, вернуть квантили для
[0 25 50 75 100].Необязательный аргумент dim определяет размерность, по которой вычисляются процентили. Если dim опущен, он по умолчанию равен первой неединичной размерности.
Примечание по программированию: все нечисловые значения (NaN) x игнорируются.
См. также: quantile.
Быстрый вывод сводки набора данных может быть получен с помощью функции statistics.
- : stats = statistics (x) ¶
- : stats = statistics (x, dim) ¶
-
Вернуть вектор с минимумом, первым квартилем, медианой, третьим квартилем, максимумом, средним значением, стандартным отклонением, асимметрией и эксцессом элементов вектора x.
Если x является матрицей, вычислить статистику по первой неединичной размерности.
Если необязательный аргумент dim задан, работа выполняется по этой размерности.
© 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/v8.1.0/Descriptive-Statistics.html