exponenta event banner

x2fx

Преобразование матрицы предиктора в матрицу проектирования

Синтаксис

D = x2fx(X,model)
D = x2fx(X,model,categ)
D = x2fx(X,model,categ,catlevels)

Описание

D = x2fx(X,model) преобразует матрицу предикторов X в матрицу проектирования D для регрессионного анализа. Различные переменные предиктора должны появляться в различных столбцах X.

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

  • 'linear' - Постоянный и линейный члены. Это значение по умолчанию.

  • 'interaction' - Постоянные, линейные и интерактивные термины

  • 'quadratic' - постоянные, линейные, интерактивные и квадратные члены;

  • 'purequadratic' - Постоянные, линейные и квадратные члены

Если X имеет n столбцов, порядок столбцов D для полной квадратичной модели:

  1. Постоянный член

  2. Линейные члены (столбцы X, в порядке 1, 2,..., n)

  3. Условия взаимодействия (попарные произведения столбцов X, в порядке (1, 2), (1, 3),..., (1, n), (2, 3),..., (n-1, n))

  4. Квадратные члены (в порядке 1, 2,..., n)

Другие модели используют подмножество этих терминов в том же порядке.

В качестве альтернативы, model может быть матрицей, задающей многочлены произвольного порядка. В этом случае model должен иметь один столбец для каждого столбца в X и одну строку для каждого термина в модели. Записи в любой строке model являются полномочиями для соответствующих столбцов X. Например, если X имеет столбцы X1, X2, и X3, затем ряд [0 1 2] в model задает термин (X1.^0).*(X2.^1).*(X3.^2). Строка всех нулей в model указывает постоянный член, который может быть опущен.

D = x2fx(X,model,categ) обрабатывает столбцы с числами, перечисленными в векторе categ в качестве категориальных переменных. Термины, включающие категориальные переменные, создают фиктивные переменные столбцы в D. Фиктивные переменные вычисляются при условии, что возможные категориальные уровни полностью перечисляются уникальными значениями, которые появляются в соответствующем столбце X.

D = x2fx(X,model,categ,catlevels) принимает вектор catlevels той же длины, что и categ, указывая количество уровней в каждой категориальной переменной. В этом случае значения в соответствующем столбце X должны быть целыми числами в диапазоне от 1 до указанного числа уровней. Не все уровни должны отображаться в X.

Примеры

свернуть все

Преобразовать два предиктора X1 и X2 (столбцы X) в матрицу проектирования для полной квадратичной модели с терминами constant, X1, X2, X1.*X2, X1.^2, и X2.^2.

X = [1 10
     2 20
     3 10
     4 20
     5 15
     6 15];
D = x2fx(X,'quadratic')
D = 6×6

     1     1    10    10     1   100
     1     2    20    40     4   400
     1     3    10    30     9   100
     1     4    20    80    16   400
     1     5    15    75    25   225
     1     6    15    90    36   225

Преобразовать два предиктора X1 и X2 (столбцы X) в матрицу проектирования для квадратичной модели с терминами constant, X1, X2, X1.*X2, и X1.^2.

X = [1 10
     2 20
     3 10
     4 20
     5 15
     6 15];
model = [0 0
         1 0
         0 1
         1 1
         2 0];
D = x2fx(X,model)
D = 6×5

     1     1    10    10     1
     1     2    20    40     4
     1     3    10    30     9
     1     4    20    80    16
     1     5    15    75    25
     1     6    15    90    36

См. также

| | | | |

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