PiecewiseLinearDistribution

Кусочный линейный объект распределения вероятностей

Описание

Объект PiecewiseLinearDistribution состоит из образцового описания для кусочного линейного распределения вероятностей.

Кусочное линейное распределение является созданным использованием непараметрического распределения вероятностей кусочного линейного представления кумулятивной функции распределения (cdf). Опции, заданные для кусочного линейного распределения, задают форму cdf. Функция плотности вероятности (PDF) является ступенчатой функцией.

Кусочное линейное распределение использует следующие параметры.

ПараметрОписание
xВектор значений x, в которых cdf изменяет наклон
FxВектор cdf значений, которые соответствуют каждому значению в x

Создание

Создайте распределение вероятностей PiecewiseLinearDistribution с заданным объектом значений параметров использование makedist.

Свойства

развернуть все

Параметры распределения

Значения данных, в которых кумулятивная функция распределения (cdf) изменяет наклон, заданный как вектор скалярных значений.

Типы данных: single | double

значение cdf в каждом значении в x, заданном как вектор скалярных значений.

Типы данных: single | double

Характеристики распределения

Это свойство доступно только для чтения.

Логический флаг для усеченного распределения, заданного как логическое значение. Если IsTruncated равняется 0, распределение не является усеченным. Если IsTruncated равняется 1, распределение является усеченным.

Типы данных: логический

Это свойство доступно только для чтения.

Количество параметров для распределения вероятностей, заданного как положительное целочисленное значение.

Типы данных: double

Это свойство доступно только для чтения.

Значения параметра распределения, заданные как вектор.

Типы данных: single | double

Это свойство доступно только для чтения.

Интервал усечения для распределения вероятностей, заданного как вектор, содержащий более низкие и верхние контуры усечения.

Типы данных: single | double

Другие свойства объектов

Это свойство доступно только для чтения.

Имя распределения вероятностей, заданное как вектор символов.

Типы данных: char

Это свойство доступно только для чтения.

Описания параметра распределения, заданные как массив ячеек из символьных векторов. Каждая ячейка содержит краткое описание одного параметра распределения.

Типы данных: char

Это свойство доступно только для чтения.

Имена параметра распределения, заданные как массив ячеек из символьных векторов.

Типы данных: char

Функции объекта

cdfКумулятивная функция распределения
icdfОбратная кумулятивная функция распределения
iqrМежквартильный размах
meanСреднее значение распределения вероятностей
medianМедиана распределения вероятностей
pdfФункция плотности вероятности
randomСлучайные числа
stdСтандартное отклонение распределения вероятностей
truncateУсеченный объект распределения вероятностей
varОтклонение распределения вероятностей

Примеры

свернуть все

Создайте кусочный линейный объект распределения с помощью значений параметров по умолчанию.

pd = makedist('PiecewiseLinear')
pd = 
  PiecewiseLinearDistribution

F(0) = 0
F(1) = 1

Загрузите выборочные данные. Визуализируйте терпеливые данные о весе с помощью гистограммы.

load hospital
histogram(hospital.Weight)

Гистограмма показывает, что данные имеют два режима, один для пациенток и один для штекерных пациентов.

Вычислите эмпирическую кумулятивную функцию распределения (ecdf) для данных.

[f,x] = ecdf(hospital.Weight);

Создайте кусочную линейную аппроксимацию к ecdf и постройте обе функции.

f = f(1:5:end); % keep a less dense grid of points
x = x(1:5:end);

figure;
ecdf(hospital.Weight)
hold on
plot(x,f,'ro','MarkerFace','r') % overlay grid
plot(x,f,'k') % show interpolation

Создайте кусочный линейный объект распределения вероятностей использование кусочного приближения ecdf.

pd = makedist('PiecewiseLinear','x',x,'Fx',f)
pd = 
  PiecewiseLinearDistribution

F(111) = 0
F(118) = 0.05
F(124) = 0.13
F(130) = 0.25
F(135) = 0.37
F(142) = 0.5
F(163) = 0.55
F(171) = 0.61
F(178) = 0.7
F(183) = 0.82
F(189) = 0.94
F(202) = 1

Сгенерируйте 100 случайных чисел от распределения.

rw = random(pd,100,1);

Постройте случайные числа, чтобы визуально сравнить их распределение с исходными данными.

figure;
histogram(rw)

Случайные числа, сгенерированные от кусочного линейного распределения, имеют то же бимодальное распределение как исходные данные.

Введенный в R2013a