exponenta event banner

mnrval

Значения полиномиальной логистической регрессии

Описание

пример

pihat = mnrval(B,X) возвращает предсказанные вероятности для модели полиномиальной логистической регрессии с предикторами, Xи оценки коэффициентов, B.

pihat - матрица n-на-k прогнозируемых вероятностей для каждой полиномиальной категории. B является вектором или матрицей, которая содержит оценки коэффициентов, возвращенные mnrfit. И X является матрицей n-за-p, которая содержит n наблюдений для p предикторов.

Примечание

mnrval автоматически включает постоянный член во все модели. Не вводите столбец 1 в X.

пример

[pihat,dlow,dhi] = mnrval(B,X,stats) также возвращает 95% границ ошибок для прогнозируемых вероятностей, pihat, используя статистику в структуре, stats, возвращено mnrfit.

Нижняя и верхняя доверительные границы для pihat являются pihat минус dlow и pihat плюс dhiсоответственно. Доверительные границы несимметричны и применяются только к подогнанной кривой, а не к новым наблюдениям.

[pihat,dlow,dhi] = mnrval(B,X,stats,Name,Value) возвращает прогнозируемые вероятности и 95% границ ошибок для прогнозируемых вероятностей pihat, с дополнительными опциями, указанными одним или несколькими Name,Value аргументы пары.

Например, можно указать тип модели, функцию связи и тип возвращаемых вероятностей.

yhat = mnrval(B,X,ssize) возвращает количество прогнозируемых категорий для размеров выборки, ssize.

пример

[yhat,dlow,dhi] = mnrval(B,X,ssize,stats) также вычисляет 95% границ ошибок для прогнозируемых счетчиков yhat, используя статистику в структуре, stats, возвращено mnrfit.

Нижняя и верхняя доверительные границы для yhat являются yhat минус dlo и yhat плюс dhiсоответственно. Доверительные границы несимметричны и применяются к подогнанной кривой, а не к новым наблюдениям.

пример

[yhat,dlow,dhi] = mnrval(B,X,ssize,stats,Name,Value) возвращает прогнозируемые значения счетчиков категорий и 95% предельных значений ошибок для прогнозируемых значений счетчиков yhat, с дополнительными опциями, указанными одним или несколькими Name,Value аргументы пары.

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

Примеры

свернуть все

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

Загрузите образцы данных.

load fisheriris

Вектор столбца, species, состоит из цветков радужки трёх различных видов, сетозы, версиколора, виргиники. Двойная матрица meas состоит из четырёх видов измерений на цветках, длины и ширины чашелистиков и лепестков в сантиметрах соответственно.

Определите номинальную переменную отклика.

sp = nominal(species);
sp = double(sp);

Теперь в sp, 1, 2 и 3 указывают виды setosa, versicolor и virginica соответственно.

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

[B,dev,stats] = mnrfit(meas,sp);

Оценить вероятность быть определенным видом для цветка радужки, имеющего измерения (6.3, 2.8, 4.9, 1.7).

x = [6.3, 2.8, 4.9, 1.7];
pihat = mnrval(B,x);
pihat
pihat = 1×3

         0    0.3977    0.6023

Вероятность того, что цветок радужки, имеющий измерения (6,3, 2,8, 4,9, 1,7), является сетозой, равна 0, версиколор равен 0,3977, а виргиника равна 0,6023.

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

Загрузите данные выборки и определите переменные предиктора.

load('carbig.mat')
X = [Acceleration Displacement Horsepower Weight];

Переменные предиктора - ускорение, рабочий объем двигателя, лошадиная сила и вес автомобилей. Переменная ответа - мили на галлон (MPG).

Создание порядковой переменной ответа с категоризацией MPG на четыре уровня от 9 до 48 мпг.

miles = ordinal(MPG,{'1','2','3','4'},[],[9,19,29,39,48]);
miles = double(miles);

Теперь в милях 1 обозначает машины с милями на галлон от 9 до 19, а 2 обозначает машины с милями на галлон от 20 до 29. Аналогично, 3 и 4 указывают автомобили с милями на галлон от 30 до 39 и от 40 до 48 соответственно.

Подгонка модели полиномиальной регрессии для переменной отклика miles. Для порядковой модели используется значение по умолчанию 'link' является logit и значение по умолчанию 'interactions' является 'off'.

[B,dev,stats] = mnrfit(X,miles,'model','ordinal');

Вычислите оценки вероятности и 95% границ ошибок для доверительных интервалов вероятности для миль на галлон автомобиля с x = (12, 113, 110, 2670).

x = [12,113,110,2670];
[pihat,dlow,hi] = mnrval(B,x,stats,'model','ordinal');
pihat
pihat = 1×4

    0.0615    0.8426    0.0932    0.0027

Вычислите доверительные границы для вероятностных оценок категории.

LL = pihat - dlow;
UL = pihat + hi;
[LL;UL]
ans = 2×4

    0.0073    0.7829    0.0283   -0.0003
    0.1157    0.9022    0.1580    0.0057

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

Загрузите образцы данных.

load fisheriris

Вектор столбца, species, состоит из цветков радужки трёх различных видов, сетозы, версиколора и виргиники. Двойная матрица meas состоит из четырёх видов измерений на цветках, длины и ширины чашелистиков и лепестков в сантиметрах соответственно.

Определите номинальную переменную отклика.

sp = nominal(species);
sp = double(sp);

Теперь в sp, 1, 2 и 3 указывают виды setosa, versicolor и virginica соответственно.

Подберите номинальную модель для оценки вида на основе измерений цветка.

[B,dev,stats] = mnrfit(meas,sp);

Оцените количество в каждой категории видов для образца из 100 цветков радужки с помощью измерений (6,3, 2,8, 4,9, 1,7).

x = [6.3, 2.8, 4.9, 1.7];
yhat = mnrval(B,x,18)
yhat = 1×3

         0    7.1578   10.8422

Оцените границы ошибок для счетчиков.

[yhat,dlow,hi] = mnrval(B,x,18,stats,'model','nominal');

Вычислите доверительные границы для вероятностных оценок категории.

LL = yhat - dlow;
UL = yhat + hi;
[LL;UL]
ans = 2×3

         0    3.3019    6.9863
         0   11.0137   14.6981

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

x = [-3 -2 -1 0 1 2 3]';
Y = [1 11 13; 2 9 14; 6 14 5; 5 10 10;...
		 5 14 6; 7 13 5; 8 11 6];
[Y x]
ans = 7×4

     1    11    13    -3
     2     9    14    -2
     6    14     5    -1
     5    10    10     0
     5    14     6     1
     7    13     5     2
     8    11     6     3

Существуют наблюдения по семи различным значениям переменной предиктора x . Переменная ответа Y имеет три категории, и данные показывают, сколько из 25 человек находятся в каждой категории Y для каждого наблюдения x. Например, когда x составляет -3, 1 из 25 особей наблюдается в категории 1, 11 - в категории 2 и 13 - в категории 3. Аналогично, когда x 1, 5 особей наблюдаются в категории 1, 14 - в категории 2 и 6 - в категории 3.

Постройте график числа в каждой категории по сравнению с x значения на параллельной гистограмме.

bar(x,Y,'stacked'); 
ylim([0 25]);

Figure contains an axes. The axes contains 3 objects of type bar.

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

betaHatNom = mnrfit(x,Y,'model','nominal',...
    'interactions','on')
betaHatNom = 2×2

   -0.6028    0.3832
    0.4068    0.1948

Первая строка betaHatOrd содержит условия перехвата для первых двух категорий ответа. Второй ряд содержит откосы. mnrfit принимает третью категорию в качестве ссылочной и, следовательно, предполагает, что коэффициенты для третьей категории равны нулю.

Вычислите прогнозируемые вероятности для трех категорий ответа.

xx = linspace(-4,4)';
piHatNom = mnrval(betaHatNom,xx,'model','nominal',...
    'interactions','on');

Вероятность нахождения в третьей категории составляет просто 1 - P (y = 1) - P (y = 2 ).

Постройте график расчетного кумулятивного числа в каждой категории на гистограмме.

line(xx,cumsum(25*piHatNom,2),'LineWidth',2);

Figure contains an axes. The axes contains 6 objects of type bar, line.

Кумулятивная вероятность для третьей категории всегда равна 1.

Теперь поместите «параллельную» порядковую модель для вероятностей категории кумулятивных откликов с общим наклоном на одну предикторную переменную, x, по всем категориям:

betaHatOrd = mnrfit(x,Y,'model','ordinal',...
    'interactions','off')
betaHatOrd = 3×1

   -1.5001
    0.7266
    0.2642

Первые два элемента betaHatOrd являются терминами перехвата для первых двух категорий ответа. Последний элемент betaHatOrd - общий уклон.

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

piHatOrd = mnrval(betaHatOrd,xx,'type','cumulative',...
    'model','ordinal','interactions','off');

Постройте график расчетного кумулятивного числа на гистограмме наблюдаемого кумулятивного числа.

figure()
bar(x,cumsum(Y,2),'grouped'); 
ylim([0 25]);
line(xx,25*piHatOrd,'LineWidth',2);

Figure contains an axes. The axes contains 5 objects of type bar, line.

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

свернуть все

Оценки коэффициентов для модели полиномиальной логистической регрессии, указанной как вектор или матрица, возвращаемые mnrfit. Это вектор или матрица в зависимости от модели и взаимодействий.

Пример: B = mnrfit(X,y); pihat = mnrval(B,X)

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

Выборка данных о предикторах, указанных как n-by-p. X содержит n наблюдений для p предикторов.

Примечание

mnrval автоматически включает постоянный член во все модели. Не вводите столбец 1 в X.

Пример: pihat = mnrval(B,X)

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

Статистика модели, указанная как структура, возвращаемая mnrfit. Необходимо использовать stats входной аргумент в mnrval для вычисления нижней и верхней границ ошибок для вероятностей и счетчиков категорий.

Пример: [B,dev,stats] = mnrfit(X,y);[pihat,dlo,dhi] = mnrval(B,X,stats)

Размеры выборки для возврата количества элементов в категориях ответа для каждой комбинации переменных предиктора, указанных как вектор столбца n-by-1 положительных целых чисел.

Например, для переменной ответа, имеющей три категории, если наблюдение числа индивидуумов в каждой категории равно y1, y2 и y3 соответственно, то размер выборки m для этого наблюдения равен m = y1 + y2 + y3.

Если размеры выборки для n наблюдений находятся в векторе sample, затем можно ввести размеры выборки следующим образом.

Пример: yhat = mnrval(B,X,sample)

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

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'model','ordinal','link','probit','type','cumulative' указывает, что mnrval возвращает оценки кумулятивных вероятностей для порядковой модели с функцией пробит-связи.

Тип полиномиальной модели, подгоняемой mnrfit, указанная как пара, разделенная запятыми, состоящая из 'model' и одно из следующих.

'nominal'По умолчанию. Укажите, когда нет порядка между категориями ответов.
'ordinal'Укажите, когда существует естественный порядок между категориями ответов.
'hierarchical'Укажите, когда выбор категории ответа является последовательным.

Пример: 'model','ordinal'

Индикатор взаимодействия между полиномиальными категориями и коэффициентами в модели, подгоняемой mnrfit, указанная как пара, разделенная запятыми, состоящая из 'interactions' и одно из следующих.

'on'Значение по умолчанию для номинальных и иерархических моделей. Укажите соответствие модели с различными перехватами и коэффициентами по категориям.
'off'По умолчанию для порядковых моделей. Укажите, чтобы соответствовать модели с различными перехватами, но общим набором коэффициентов для переменных предиктора для всех полиномиальных категорий. Это часто описывается как модель параллельной регрессии или пропорциональных шансов.

Пример: 'interactions','off'

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

Тип вероятностей или счетчиков для оценки, указанный как пара, разделенная запятыми, включая 'type' и одно из следующих.

'category'По умолчанию. Укажите, чтобы вернуть предсказания и границы ошибок для вероятностей (или счетчиков) k полиномиальных категорий.
'cumulative'Укажите, чтобы вернуть предсказания и доверительные границы для кумулятивных вероятностей (или счетчиков) первых k-1 полиномиальных категорий, как матрицу n-by- (k-1). Прогнозируемая кумулятивная вероятность для k-ой категории всегда равна 1 .
'conditional'Укажите, чтобы вернуть предсказания и границы ошибок в терминах первой k-1 условной категории вероятностей (счетчиков), то есть вероятности (счетчика) для категории j, учитывая результат в категории j или выше. Когда 'type' является 'conditional'и вы указываете аргумент sample size ssize, прогнозируемые счетчики в каждой строке X на соответствующем элементе ssize, по всем категориям.

Пример: 'type','cumulative'

Уровень достоверности для границ ошибок, указанный как пара, разделенная запятыми, состоящая из 'confidence' и скалярное значение в диапазоне (0,1).

Например, для 99% границ ошибок можно задать достоверность следующим образом:

Пример: 'confidence',0.99

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

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

свернуть все

Оценки вероятности для каждой полиномиальной категории, возвращаемые в виде матрицы n-by- (k-1), где n - количество наблюдений, а k - число категорий ответа.

Подсчет оценок для числа в каждой категории ответа, возвращаемого в виде матрицы n-by-k-1, где n - количество наблюдений, а k - число категорий ответа.

Нижняя граница ошибки для вычисления нижней границы достоверности для pihat или yhat, возвращается в виде вектора столбца.

Нижняя доверительная граница для pihat является pihat минус dlow. Аналогично, нижняя доверительная граница для yhat является yhat минус dlow. Доверительные границы несимметричны и применяются только к подогнанной кривой, а не к новым наблюдениям.

Верхняя граница ошибки для вычисления верхней доверительной границы для pihat или yhat, возвращается в виде вектора столбца.

Верхняя доверительная граница для pihat является pihat плюс dhi. Аналогично, верхняя доверительная граница для yhat является yhat плюс dhi. Доверительные границы несимметричны и применяются только к подогнанной кривой, а не к новым наблюдениям.

Ссылки

[1] Маккалла, П. и Дж. А. Нелдер. Обобщенные линейные модели. Нью-Йорк: Chapman & Hall, 1990.

Представлен в R2006b