feval

Предскажите ответы модели линейной регрессии использование входа того для каждого предиктора

Описание

пример

ypred = feval(mdl,Xnew1,Xnew2,...,Xnewn) возвращает предсказанный ответ mdl к новым входным предикторам [Xnew1,Xnew2,...,Xnewn].

Примеры

свернуть все

Подбирайте модель пробега к carsmall набор данных, включая Year категориальный предиктор. Наложите кривые по экспериментальным точкам на график рассеивания данных.

Загрузите набор данных и подбирайте модель.

load carsmall
tbl = table(MPG,Weight);
tbl.Year = categorical(Model_Year);
mdl = fitlm(tbl,'MPG ~ Year + Weight^2');

Создайте график рассеивания MPG по сравнению с Weight, сгруппированный Year.

gscatter(tbl.Weight,tbl.MPG,tbl.Year);

Постройте кривые прогнозов модели в течение различных лет и весов при помощи feval.

w = linspace(min(tbl.Weight),max(tbl.Weight))';
line(w,feval(mdl,w,'70'),'Color','r')
line(w,feval(mdl,w,'76'),'Color','g')
line(w,feval(mdl,w,'82'),'Color','b')

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

свернуть все

Объект модели линейной регрессии, заданный как LinearModel объект создается при помощи fitlm или stepwiselm, или CompactLinearModel объект создается при помощи compact.

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

  • Если вы передаете несколько входных параметров Xnew1,Xnew2,...,Xnewn и каждый включает наблюдения для одного переменного предиктора, затем каждый вход должен быть вектором. Каждый вектор должен иметь тот же размер. Если вы задаете переменный предиктор как скаляр, то feval расширяет скалярный аргумент в постоянный вектор одного размера с другими аргументами.

  • Если вы передаете один вход Xnew1, затем Xnew1 должна быть таблица, массив набора данных или матрица.

    • Если Xnew1 таблица или массив набора данных, это должно содержать предикторы, которые имеют те же имена предиктора как в PredictorNames свойство mdl.

    • Если Xnew1 матрица, она должна иметь то же количество переменных (столбцы) в том же порядке, как вход предиктора раньше создавал mdl. Обратите внимание на то, что Xnew1 должен также содержать любые переменные предикторы, которые не используются в качестве предикторов в подобранной модели. Кроме того, все переменные используются в создании mdl mustBeNumeric. Чтобы обработать числовые предикторы как категориальные, идентифицируйте предикторы с помощью 'CategoricalVars' аргумент пары "имя-значение", когда вы создаете mdl.

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

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

свернуть все

Предсказанные средние значения в Xnew1,Xnew2,...,Xnewn, возвращенный как числовой вектор.

Советы

  • LinearModel объект является, математически, функцией, которая оценивает отношение между ответом и предикторами. feval функция включает объекту вести себя как функция в MATLAB®. Можно передать feval к другой функции, которая принимает входной параметр функции, такой как fminsearch и integral. Кроме того, feval может быть более просто использовать с моделью, созданной из массива набора данных или таблицы. Когда у вас есть новые данные о предикторе, можно передать их feval не составляя таблицу или матрицу.

Альтернативная функциональность

  • predict дает те же прогнозы как feval при помощи одного входного параметра с одним наблюдением в каждой строке, а не нескольких входных параметров с одним входом для каждого переменного предиктора. predict также дает доверительные интервалы на его прогнозах.

  • random предсказывает ответы с добавленным шумом.

Представленный в R2012a