26.1 Описательная статистика ¶
Одна из главных целей описательной статистики — кратко представить суть большого набора данных. Octave предоставляет функции mean, median и mode, которые суммируют набор данных всего одним числом, соответствующим центральной тенденции данных.
-
:
m =mean(x)¶ -
:
m =mean(x, dim)¶ -
:
m =mean(x, vecdim)¶ -
:
m =mean(x, "all")¶ -
:
m =mean(…, nanflag)¶ -
:
m =mean(…, outtype)¶ -
Вычислить среднее значение элементов x.
Если x — вектор, то
mean (x)возвращает среднее значение элементов в x, определяемое какmean (x) = SUM_i x(i) / N
где N — количество элементов в x.
Если x — массив, то
mean(x)вычисляет среднее значение вдоль первого несинглетного измерения x.Необязательная переменная dim заставляет
meanработать над указанным измерением, которое должно быть положительным целым числом. Указание любого синглетного измерения в x, включая любое измерение, превышающееndims (x), приведет к среднему значению, равному x.Указание измерений как vecdim, вектора не повторяющихся измерений, вернет среднее значение по срезу массива, определенному vecdim. Если vecdim индексирует все измерения x, то это эквивалентно опции
"all". Любое измерение в vecdim, большее чемndims (x), игнорируется.Указание измерения как
"all"заставитmeanработать со всеми элементами x, и это эквивалентноmean (x(:)).Необязательный входной параметр outtype указывает тип данных, который возвращается. outtype может принимать следующие значения:
-
'default': Вывод имеет тип double, если только входной параметр не является -
single, в этом случае вывод имеет тип single.
-
'double': Вывод имеет тип double. -
'native': Вывод имеет тот же тип, что и входной параметр, как сообщается с помощью (
class (x)), если только входной параметр не является логическим, в этом случае вывод имеет тип double.
Необязательная переменная nanflag указывает, следует ли включать или исключать значения NaN из вычисления, используя любую из ранее указанных комбинаций входных аргументов. Значение по умолчанию для nanflag —
"includenan", которое сохраняет значения NaN в вычислении. Чтобы исключить значения NaN, установите значение nanflag в"omitnan". Вывод будет по-прежнему содержать значения NaN, если x состоит из всех значений NaN в рабочем измерении. -
-
:
m =median(x)¶ -
:
m =median(x, dim)¶ -
:
m =median(x, vecdim)¶ -
:
m =median(x, "all")¶ -
:
m =median(…, nanflag)¶ -
:
m =median(…, outtype)¶ -
Вычислить медианное значение элементов x.
Когда элементы x отсортированы, скажем
s = sort (x), медиана определяется как| s(ceil (N/2)) N odd median (x) = | | (s(N/2) + s(N/2+1))/2 N evenЕсли x — массив, то
median (x)работает вдоль первого несинглетного измерения x.Необязательная переменная dim заставляет
medianработать над указанным измерением, которое должно быть положительным целым числом. Указание любого синглетного измерения в x, включая любое измерение, превышающееndims (x), приведет к медиане, равной x.Указание измерений как vecdim, вектора не повторяющихся измерений, вернет медиану по срезу массива, определенному vecdim. Если vecdim индексирует все измерения x, то это эквивалентно опции
"all". Любое измерение в vecdim, большее чемndims (x), игнорируется.Указание измерения как
"all"заставитmedianработать со всеми элементами x, и это эквивалентноmedian (x(:)).median (…, outtype)возвращает медиану с указанным типом данных, используя любые из аргументов в предыдущих синтаксисах. outtype может принимать следующие значения:"default"-
Вывод имеет тип double, если только входной параметр не является single, в этом случае вывод имеет тип single.
"double"-
Вывод имеет тип double.
-
"native". Вывод имеет тот же тип, что и входной параметр (
class (x)), если только входной параметр не является логическим, в этом случае вывод имеет тип double.
Необязательная переменная nanflag указывает, следует ли включать или исключать значения NaN из вычисления, используя любую из ранее указанных комбинаций входных аргументов. Значение по умолчанию для nanflag —
"includenan", которое сохраняет значения NaN в вычислении. Чтобы исключить значения NaN, установите значение nanflag в"omitnan". Вывод будет по-прежнему содержать значения NaN, если x состоит из всех значений NaN в рабочем измерении.
-
:
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.
-
:
m =mad(x)¶ -
:
m =mad(x, opt)¶ -
:
m =mad(x, opt, dim)¶ -
:
m =mad(x, opt, vecdim)¶ -
:
m =mad(x, opt, "all")¶ -
Вычисляет среднее или медианное абсолютное отклонение (MAD) элементов x.
Среднее абсолютное отклонение определяется как
mad = mean (abs (x - mean (x)))
Медианное абсолютное отклонение определяется как
mad = median (abs (x - median (x)))
Если x является вектором, вычислите
madдля каждого элемента в x. Если x является массивом, вычисление выполняется по первому несинглетонному измерению.madисключает значения NaN из вычисления, аналогично использованию опцииomitnanвvar,meanиmedian.Необязательный аргумент opt определяет, вычисляется ли среднее или медианное абсолютное отклонение. Значение по умолчанию равно 0, что соответствует среднему абсолютному отклонению; значение 1 соответствует медианному абсолютному отклонению. Передача пустого входного значения [] по умолчанию соответствует среднему абсолютному отклонению (opt = 0).
Необязательный аргумент dim принуждает
madк работе вдоль указанного измерения. Указание любого синглетонного измерения в x, включая любое измерение, превышающееndims (x), приведет к выводу 0.Указание измерения как vecdim, вектора не повторяющихся измерений, вернет
madпо срезу массива, определенному vecdim. Если vecdim индексирует все измерения x, то это эквивалентно опции"all". Любое измерение, включенное в vecdim, большее, чемndims (x), игнорируется.Указание измерения как
"all"заставитmadработать со всеми элементами x и эквивалентноmad (x(:)).Как мера рассеивания,
madменее подвержена влиянию выбросов, чемstd.
-
:
y =meansq(x)¶ -
:
y =meansq(x, dim)¶ -
Вычисляет средний квадрат элементов вектора x.
Средний квадрат определяется как
meansq (x) = 1/N SUM_i x(i)^2
где N - длина вектора x.
Если x является матрицей, верните строчный вектор, содержащий средний квадрат каждого столбца.
Если указан необязательный аргумент dim, операция выполняется вдоль этого измерения.
-
:
s =std(x)¶ -
:
s =std(x, w)¶ -
:
s =std(x, w, dim)¶ -
:
s =std(x, w, vecdim)¶ -
:
s =std(x, w,¶"ALL") -
:
s =std(…, nanflag)¶ -
:
[s, m] =std(…)¶ -
Вычислить стандартное отклонение элементов вектора x.
Стандартное отклонение определяется как
std (x) = sqrt ((1 / (N-1)) * SUM_i ((x(i) - mean(x))^2))
где N — количество элементов x.
Если x — массив, вычислить стандартное отклонение по первым несингулярным измерениям x.
Необязательный аргумент w определяет используемую схему взвешивания. Допустимые значения:
- 0 [по умолчанию]:
-
Нормализовать с N-1 (стандартное отклонение генеральной совокупности). Это даёт квадратный корень из наилучшей несмещённой оценки стандартного отклонения.
- 1:
-
Нормализовать с N (стандартное отклонение выборки). Это даёт квадратный корень из второй центральной моменты.
- вектор:
-
Вычислить взвешенное стандартное отклонение с неотрицательными весами. Длина w должна быть равна размеру x в операционном измерении. Значения NaN допускаются в w, будут умножены на соответствующие значения в x и могут быть исключены опцией nanflag.
- массив:
Аналогично весам-векторам, но w должен иметь такой же размер, как и x. Если операционное измерение задано как vecdim или
"all"и w не является скаляром, w должен быть массивом того же размера.
Примечание: w всегда должен быть указан перед указанием каких-либо следующих опций измерения. Чтобы использовать значение по умолчанию для w, можно передать пустой входной аргумент [].
Необязательная переменная dim принудительно заставляет
stdработать над указанным измерением, которое должно быть положительным целым числом. Указание любого сингулярного измерения в x, включая любое измерение, превышающееndims (x), приведёт к стандартному отклонению 0.Указание измерений как vecdim, вектора не повторяющихся измерений, вернёт стандартное отклонение, вычисленное по срезу массива, определённому vecdim. Если vecdim индексирует все измерения x, то это эквивалентно опции
"all". Любое измерение в vecdim, большее чемndims (x), игнорируется.Указание измерения как
"all"принудительно заставитstdработать со всеми элементами x и эквивалентноstd (x(:)).Необязательная переменная nanflag указывает, включать или исключать значения NaN из расчёта, используя любые из ранее указанных комбинаций входных аргументов. Значение по умолчанию для nanflag равно
"includenan", что сохраняет значения NaN в расчёте. Чтобы исключить значения NaN, установите значение nanflag в"omitnan". Выходные данные всё ещё будут содержать значения NaN, если x состоит из всех значений NaN в операционном измерении.Необязательная вторая выходная переменная m содержит среднее значение элементов x, используемое для расчёта стандартного отклонения. Если v — взвешенное стандартное отклонение, то m также является взвешенной средней.
Помимо знания размера рассеяния, полезно знать форму набора данных. Например, сгруппированы ли точки данных слева или справа от среднего? Octave предоставляет несколько общих мер для описания формы набора данных. Octave также может вычислять моменты, позволяющие разрабатывать произвольные меры формы.
-
:
v =var(x)¶ -
:
v =var(x, w)¶ -
:
v =var(x, w, dim)¶ -
:
v =var(x, w, vecdim)¶ -
:
v =var(x, w,¶"all") -
:
v =var(…, nanflag)¶ -
:
[v, m] =var(…)¶ -
Вычислить дисперсию элементов вектора x.
Дисперсия определяется как
var (x) = (1 / (N-1)) * SUM_i ((x(i) - mean(x))^2)
где N — количество элементов вектора x.
Если x является массивом, вычислить дисперсию по первым неединичным измерениям x.
Необязательный аргумент w определяет используемую схему взвешивания. Допустимые значения:
- 0 [по умолчанию]:
-
Нормализация с N-1 (дисперсия генеральной совокупности). Это предоставляет квадратный корень из наилучшей несмещенной оценки дисперсии.
- 1:
-
Нормализация с N (выборочная дисперсия). Это предоставляет квадратный корень из второй центральной моменты вокруг среднего.
- вектор:
-
Вычислить взвешенную дисперсию с неотрицательными весами. Длина w должна быть равна размеру x в действующем измерении. Значения NaN допускаются в w, будут умножены на соответствующие значения в x и могут быть исключены с помощью параметра nanflag.
- массив:
Аналогично весовым векторам, но w должен быть того же размера, что и x. Если измерительное измерение задано как vecdim или
"all"и w не является скаляром, w должен быть массивом такого же размера.
Примечание: w должен всегда быть указан перед указанием любых других параметров измерения. Для использования значения по умолчанию для w можно передать пустой входной аргумент [].
Необязательная переменная dim принудительно
varк работе над указанным измерением, которое должно быть положительным целым числом. Указание любого единичного измерения в x, включая любое измерение, превышающееndims (x), приведет к дисперсии 0.Указание измерений как vecdim, вектора не повторяющихся измерений, вернёт дисперсию, вычисленную над фрагментом массива, определённого vecdim. Если vecdim индексирует все измерения x, то это эквивалентно параметру
"all". Любое измерение в vecdim, большее, чемndims (x), игнорируется.Указание измерения как
"all"принудительноvarк работе со всеми элементами x и эквивалентноvar (x(:)).Необязательная переменная nanflag указывает, включать или исключать значения NaN из вычислений, используя любые из ранее указанных комбинаций входных аргументов. Значение по умолчанию для nanflag равно
"includenan", что сохраняет значения NaN в вычислении. Чтобы исключить значения NaN, установите значение nanflag в"omitnan". Выходные данные по-прежнему будут содержать значения NaN, если x состоит из всех значений NaN в действующем измерении.Необязательная вторая выходная переменная m содержит среднее значение элементов x, используемых для вычисления дисперсии. Если v — взвешенная дисперсия, то m — также взвешенное среднее.
-
:
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 содержала 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 содержала 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/v9.2.0/Descriptive-Statistics.html