probplot

Графики вероятности

Описание

пример

probplot(y) создает график нормального распределения, сравнивающий распределение данных в y к нормальному распределению.

probplot графики каждая точка данных в y использование символов маркера и проводит ссылочную линию, которая представляет теоретическое распределение. Если выборочные данные имеют нормальное распределение, то точки данных появляются вдоль ссылочной линии. Ссылочная линия соединяет первые и третьи квартили данных и расширяет к концам данных. Распределение кроме нормального вводит искривление в графике данных.

probplot(y,cens) создает график вероятности с помощью данных о цензурировании в cens.

пример

probplot(y,cens,freq) создает график вероятности с помощью данных о цензурировании в cens и данные о частоте в freq.

пример

probplot(dist,___) создает график вероятности для распределения, заданного dist, использование любого из входных параметров в предыдущих синтаксисах.

probplot(ax,___) добавляет график вероятности в существующие оси графика вероятности, заданные ax, использование любого из входных параметров в предыдущих синтаксисах.

probplot(ax,pd) добавляет подходящую линию на существующих осях графика вероятности, заданных ax представлять вероятностное распределение pd.

пример

probplot(ax,fun,params) добавляет подходящую линию на существующих осях графика вероятности, заданных ax представлять функциональный fun параметрами params.

probplot(___,'noref') не использует ссылочную линию из графика.

пример

h = probplot(___) возвращает графические указатели, соответствующие построенным линиям.

Примеры

свернуть все

Сгенерируйте выборочные данные и создайте график вероятности.

Сгенерируйте выборочные данные. Демонстрационный x1 содержит 500 случайных чисел от распределения Weibull с масштабным коэффициентом A = 3 и сформируйте параметр B = 3. Демонстрационный x2 содержит 500 случайных чисел от Распределения Релея с масштабным коэффициентом B = 3.

rng('default');  % For reproducibility
x1 = wblrnd(3,3,[500,1]);
x2 = raylrnd(3,[500,1]);

Создайте график вероятности оценить ли данные в x1 и x2 прибывает из распределения Weibull.

figure
probplot('weibull',[x1 x2])
legend('Weibull Sample','Rayleigh Sample','Location','best')

График вероятности показывает что данные в x1 прибывает из распределения Weibull, в то время как данные в x2 не делает.

В качестве альтернативы можно использовать wblplot создать график вероятности Weibull.

Создайте график вероятности и дополнительную подходящую линию на той же фигуре.

Сгенерируйте выборочные данные, содержащие приблизительно 20% выбросов в хвостах. Левый хвост выборочных данных содержит 10 значений, случайным образом сгенерированных от экспоненциального распределения параметром mu = 1. Правый хвост содержит 10 значений, случайным образом сгенерированных от экспоненциального распределения параметром mu = 5. Центр выборочных данных содержит 80 значений, случайным образом сгенерированных от стандартного нормального распределения.

rng('default')  % For reproducibility
left_tail = -exprnd(1,10,1);
right_tail = exprnd(5,10,1);
center = randn(80,1);
data = [left_tail;center;right_tail];

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

probplot(data)

Постройте t кривую шкалы местоположения на той же фигуре, чтобы соответствовать data.

p = mle(data,'distribution','tLocationScale');
t = @(data,mu,sig,df)cdf('tLocationScale',data,mu,sig,df);
h = probplot(gca,t,p);
h.Color = 'r';
h.LineStyle = '-';
title('{\bf Probability Plot}')
legend('Normal','Data','t','Location','NW')

График показывает, что ни нормальная линия, ни t кривая шкалы местоположения не соответствуют хвостам очень хорошо из-за выбросов.

Создайте график полунормального распределения вероятностей идентифицировать значительные эффекты в эксперименте, чтобы изучить факторы, которые могут влиять на скорость потока жидкости в химическом производственном процессе. Этими четырьмя факторами являются реагенты ABC, и D. Каждый фактор присутствует на двух уровнях (высокая и низкая концентрация). Эксперимент содержит только одну репликацию на каждом факторном уровне.

Загрузите выборочные данные.

load flowrate

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

Подбирайте модель линейной регрессии использование rate как переменная отклика. Используйте переменные предикторы ABCD, и все их периоды взаимодействия.

mdl = fitlm(flowrate,'rate ~ A*B*C*D');

Вычислите и сохраните абсолютное значение факторных оценок эффекта. Чтобы получить факторные оценки эффекта, умножьте содействующие оценки, полученные во время модели, соответствующей на два. Этот шаг необходим, потому что коэффициенты регрессии измеряют эффект изменения с одним модулем в x на среднем значении y. Однако оценки эффектов измеряют 2D модульное изменение в x из-за матричного кодирования проекта-1 и 1. Исключите базовое измерение. Обратите внимание на то, что факторный порядок в mdl может отличаться от порядка в матрице первоначального проекта.

effects = abs(mdl.Coefficients{2:end,1}*2);

Создайте полуграфик нормального распределения с помощью абсолютного значения оценок эффектов, исключая базовую линию.

figure
h = probplot('halfnormal',effects);

Пометьте точки и отформатируйте график. Во-первых, возвратите значения индекса для отсортированных оценок эффектов (от самого низкого до самого высокого). Затем используйте эти значения индекса, чтобы отсортировать значения вероятности, сохраненные в графическом указателе (h(1).YData).

[b,i] = sort(effects);
prob(i) = h(1).YData;

Добавьте текстовые метки в график в каждой точке. Для каждой точки x-значение является оценкой эффектов, и y-значение является соответствующей вероятностью.

text(effects,prob,mdl.CoefficientNames(2:end),'FontSize',8,...
    'VerticalAlignment','top')
h(1).Color = 'r';

Точки, расположенные далекий от ссылочной линии, представляют значительные эффекты.

Сгенерируйте симулированные данные о частоте.

y = 1:10;
freq = [2 4 6 7 9 8 7 7 6 5];

Создайте график нормального распределения с помощью данных о частоте.

probplot(y,[],freq)

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

Входные параметры

свернуть все

Выборочные данные в виде числовой векторной или числовой матрицы. probplot отображения каждое значение в y использование символов маркера включая 'x' и 'o'. Если y матрица, затем probplot отображает отдельную линию для каждого столбца y.

Не все распределения подходят для всех наборов данных. probplot ошибки, если набор данных является несоответствующим для заданного распределения. Смотрите dist поскольку соответствующие данные располагаются для каждого распределения.

Распределение для вероятности строит в виде объекта вероятностного распределения или одного из следующих имен распределения:

ИмяПостройте типDataRange
'normal'График нормального распределенияВсе значения
'exponential'Экспоненциальный график вероятностиНеотрицательные значения
'extreme value'График вероятности экстремумаВсе значения
'half normal'Полуграфик нормального распределенияВсе значения
'lognormal'Логарифмически нормальный график вероятностиПоложительные значения
'logistic'Логистический график вероятностиВсе значения
'loglogistic'График вероятности LoglogisticПоложительные значения
'rayleigh'Рэлеевский график вероятностиПоложительные значения
'weibull'График вероятности WeibullПоложительные значения

Значением по умолчанию является 'normal' если вы создаете график вероятности в новой фигуре. Если вы добавляете график вероятности в фигуру, которая уже включает один при помощи ax входной параметр, затем значением по умолчанию является тип графика существующего графика вероятности.

Можно создать объект вероятностного распределения с заданными значениями параметров с помощью makedist. В качестве альтернативы соответствуйте объекту вероятностного распределения к выборочным данным с помощью fitdist. Для получения дополнительной информации об объектах вероятностного распределения смотрите Работу с Вероятностными распределениями.

y - шкала оси основана на выбранном распределении. x - ось имеет логарифмическую шкалу для Weibull, loglogistic, и логарифмически нормальные распределения и линейную шкалу для других.

Не все распределения подходят для всех наборов данных. probplot ошибки, если набор данных является несоответствующим для заданного распределения.

Пример: 'weibull'

Цензурирование данных в виде числового вектора. cens должна быть та же длина как y, и содержите 1 значение для наблюдений, которые подвергаются цензуре правом и 0 значение для наблюдений, которые измеряются точно.

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

Данные о частоте в виде вектора целочисленных значений. freq должна быть та же длина как y. freq содержит целочисленные частоты для соответствующих элементов в y.

Чтобы создать вероятность отображают данные о частоте использования на графике, но не цензурирование данных, задайте пустые скобки ([]) для cens.

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

Целевые оси в виде Axes возразите или UIAxes объект. probplot добавляет дополнительный график в оси, заданные ax. Для получения дополнительной информации смотрите Axes Properties and UIAxes Properties.

Используйте gca возвратить текущую систему координат для текущей фигуры.

Вероятностное распределение для ссылочной линии в виде объекта вероятностного распределения. probplot добавляет подходящую линию на оси, заданные ax представлять вероятностное распределение, заданное pd.

Создайте объект вероятностного распределения с заданными значениями параметров с помощью makedist. В качестве альтернативы соответствуйте объекту вероятностного распределения к выборочным данным с помощью fitdist. Для получения дополнительной информации об объектах вероятностного распределения смотрите Работу с Вероятностными распределениями.

Функция для ссылочной линии в виде указателя на функцию. probplot добавляет подходящую линию на оси, заданные ax представлять функцию, заданную fun, оцененный в параметрах задан params.

fun указатель на функцию к функции cdf, заданное использование оператора указателя на функцию @. Функция должна принять вектор входных значений в качестве его первого аргумента и возвратить вектор, содержащий cdf, оцененный в каждом входном значении. Задайте значения параметров, требуемые оценивать fun использование params аргумент. Для получения дополнительной информации об указателях на функцию см. Создание указателя на функцию (MATLAB).

Пример: @wblpdf

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

Ссылочные параметры функции линии в виде вектора числовых значений или массива ячеек. probplot добавляет подходящую линию на оси, заданные ax представлять функцию, заданную fun, оцененный в параметрах задан params.

fun указатель на функцию к функции cdf, заданное использование оператора указателя на функцию @. Функция должна принять вектор значений в качестве его первого аргумента и возвратить вектор cdf значений, оцененных в каждом значении. Задайте значения параметров, требуемые оценивать fun использование params аргумент. Для получения дополнительной информации об указателях на функцию см. Создание указателя на функцию (MATLAB).

Выходные аргументы

свернуть все

Графические указатели для объектов линии, возвращенных как вектор Линии графические указатели. Графические указатели являются уникальными идентификаторами, которые можно использовать, чтобы запросить и изменить свойства определенной линии на графике. Для каждого столбца y, probplot возвращает два указателя:

  • Линия, представляющая точки данных. probplot представляет каждую точку данных в y использование символов маркера, таких как '+' и 'o'.

  • Линия, показывающая теоретическое распределение для графика вероятности, представленного как пунктирная линия.

Чтобы просмотреть и установить свойства объектов линии, используйте запись через точку. Для получения информации об использовании записи через точку см. Доступ к значениям свойств (MATLAB). Для получения информации о Line свойства, которые можно установить, видят Line Properties.

Алгоритмы

probplot совпадает с квантилями выборочных данных к квантилям данного вероятностного распределения. Выборочные данные сортируются, масштабируются согласно выбору dist, и построенный на оси X. Когда dist 'lognormal', 'loglogistic', или 'weibull', масштабирование является логарифмическим. В противном случае масштабирование линейно. Ось Y представляет квантили распределения, заданного в dist, преобразованный в значения вероятности. Масштабирование зависит от данного распределения и не линейно.

Где значением оси X является i th отсортированное значение от выборки размера N, значение оси Y является средней точкой между точками оценки эмпирической кумулятивной функции распределения данных. В случае не прошедших цензуру данных средняя точка равна (i0.5)N.

probplot накладывает ссылочную линию, чтобы оценить линейность графика. Если данные являются не прошедшими цензуру, то линия проходит первые и третьи квартили данных. Если данные подвергаются цензуре, то линия переключает соответственно. Если данные являются не прошедшими цензуру и dist 'half normal', затем probplot использует нулевые и вторые квартили вместо этого.

Представлено до R2006a