PiecewiseLinearDistribution

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

Описание

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

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

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

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

Создание

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

Свойства

расширить все

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

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

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

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

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

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

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

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

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

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

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

Типы данных: 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)

Figure contains an axes. The axes contains an object of type histogram.

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

Вычислите эмпирическую совокупную функцию распределения (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

Figure contains an axes. The axes contains 3 objects of type stair, line.

Создайте кусочно-линейный объект распределения вероятностей с помощью кусочно- приближения 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)

Figure contains an axes. The axes contains an object of type histogram.

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

Введенный в R2013a