Чтобы подбирать линейно смешанную модель эффектов, необходимо хранить данные в массиве набора данных или таблице. В вашей таблице или массиве набора данных, у вас должен быть столбец для каждой переменной включая переменную отклика. А именно, таблица или массив набора данных, говорит tbl, должен содержать следующее:
Переменная отклика y
Прогнозирующие переменные Xjкоторый может быть непрерывным или сгруппированные переменные
Сгруппированные переменные g1, g2..., gR,
где сгруппированные переменные в Xj и gr может быть категориальным, логическим, символьный массив, массив строк или массив ячеек из символьных векторов, r = 1, 2..., R.
Необходимо организовать данные так, чтобы каждая строка представляла наблюдение. И каждая строка должна содержать значение переменных и уровни сгруппированных переменных, соответствующих тому наблюдению. Например, если у вас есть данные из эксперимента с четырьмя вариантами лечения на пяти различных типах индивидуумов, выбранных случайным образом из населения индивидуумов (блоки), таблица или массив набора данных должны выглядеть так.
| Блок | Обработка | Ответ |
|---|---|---|
| 1 | 1 | y11 |
| 1 | 2 | y12 |
| 1 | 3 | y13 |
| 1 | 4 | y14 |
| ... | ... | ... |
| 5 | 1 | y51 |
| 5 | 2 | y52 |
| 5 | 3 | y53 |
| 5 | 4 | y54 |
Теперь рассмотрите эксперимент графика разделения, где эффект четырех различных типов удобрений на выражении томатных объектов изучен. Почва, где томатные объекты установлены, разделена на три блока на основе типа грунта: песчаный, илистый, и глинистый. Каждый блок разделен на пять графиков, где пять типов томатных объектов, (вишня, семейная реликвия, виноград, виноградная лоза и слива) случайным образом присвоены этим графикам. Затем томатные объекты в графиках разделены на подграфики, где каждый подграфик обработан одним из этих четырех удобрений. Данные из этого эксперимента похожи:
| Почва | Помидор | Удобрение | Выражение |
|---|---|---|---|
| 'Песчаный' | 'Слива' | 1 | 104 |
| 'Песчаный' | 'Слива' | 2 | 136 |
| 'Песчаный' | 'Слива' | 3 | 158 |
| 'Песчаный' | 'Слива' | 4 | 174 |
| 'Песчаный' | 'Cherry' | 1 | 57 |
| 'Песчаный' | 'Cherry' | 2 | 86 |
| ... | ... | ... | ... |
| 'Песчаный' | 'Виноградная лоза' | 3 | 99 |
| 'Песчаный' | 'Виноградная лоза' | 4 | 117 |
| 'Илистый' | 'Слива' | 1 | 120 |
| 'Илистый' | 'Слива' | 2 | 115 |
| ... | ... | ... | ... |
| 'Глинистый' | 'Виноградная лоза' | 3 | 111 |
| 'Глинистый' | 'Виноградная лоза' | 4 | 105 |
Необходимо задать модель, вы хотите соответствовать использованию formula входной параметр к fitlme.
В общем случае формула для спецификации модели является вектором символов или строковым скаляром формы 'y ~ terms'. Для линейных моделей смешанных эффектов эта формула находится в форме 'y ~ fixed + (random1|grouping1) + ... + (randomR|groupingR)', где fixed содержит условия фиксированных эффектов и random1, ..., randomR содержите условия случайных эффектов. Например, для предыдущего эксперимента удобрения, рассмотрите следующую модель смешанных эффектов
где i = 1, 2..., 60, индекс, m соответствует типам удобрения, j, соответствует томатным типам, и k = 1, 2, 3 соответствует блокам (почва). S k представляет k th тип грунта и I [F], im является фиктивным переменным уровнем представления m удобрения. Точно так же I [T] ij является фиктивной переменной, представляющей уровень j томатного типа.
Можно подбирать эту модель с помощью формулы 'Yield ~ 1 + Fertilizer + Tomato + (1|Soil)+(1|Soil:Tomato)'.
Для получения дальнейшей информации о том, как задать вашу модель с помощью формулы, смотрите Отношение Между Матрицами Формулы и Проекта.
Если вы не можете легко описать свою модель с помощью формулы, можно создать матрицы проекта, чтобы задать фиксированные и случайные эффекты и подбирать модель с помощью fitlmematrix(X,y,Z,G). Необходимо создать матрицы проекта можно следующим образом.
Фиксированные эффекты и случайные эффекты проектируют матрицы X и Z:
Введите столбец 1 с для точки пересечения с помощью ones(n,1), где n является общим количеством наблюдений.
Если X1 непрерывная переменная, затем введите X1 когда это находится в отдельном столбце.
Если X1 категориальная переменная с уровнями m, затем должен быть m – 1 фиктивная переменная для m – 1 уровень X1 в X.
Например, рассмотрите эксперимент, где вы хотите изучить удар качества сырья от четырех различных провайдеров на производительности поточной линии. Если вы подбираете линейную модель смешанных эффектов с точкой пересечения и провайдером как условия фиксированных эффектов, точка пересечения является термином случайных эффектов, и вы используете ссылочное кодирование контрастов, то необходимо создать матрицы, построенные на основе фиксированных или случайных эффектов можно следующим образом.
D = dummyvar(provider); % Create dummy variables
X = [ones(n,1) D(:,2) D(:,3) D(:,4)];
Z = [ones(n,1)];Поскольку ссылочное кодирование контраста использует первого провайдера в качестве ссылки, и модель имеет точку пересечения, необходимо использовать фиктивные переменные только для последних трех провайдеров.
Если существует период взаимодействия переменных предикторов X1 и X2, затем необходимо ввести столбец, что вы формируете поэлементным продуктом векторов X1 и X2.
Например, если вы хотите подобрать модель, где существует точка пересечения, фактор непрерывного лечения, непрерывный фактор времени и их взаимодействие как фиксированные эффекты в продольном исследовании, и время является термином случайных эффектов, затем ваши матрицы, построенные на основе фиксированных или случайных эффектов должны быть похожими
X = [ones(n,1),treatment,time,treatment.*time]; y = response; Z = [time];
Сгруппированные переменные G:
Существует один столбец для каждой сгруппированной переменной и столбец поэлементного продукта сгруппированных переменных в случае вложения.
Например, если вы хотите сгруппировать графики (plot) в блоках (block), затем необходимо добавить столбец поэлементного продукта plot block. А именно, если вы хотите подобрать модель, где существует точка пересечения и фактор непрерывного лечения как фиксированные эффекты в эксперименте блока разделения, и точка пересечения и обработка сгруппированы графиками, вложенными в блоках, затем матрицы проекта должны выглядеть так.
X = [ones(n,1),treatment]; y = response; Z = [ones(n,1),treatment]; G = [block.*plot];
Предположим в более раннем качестве примера сырья, сырье прибывают в объемы, и объемы вкладываются в провайдерах. Если вы хотите подбирать линейную модель смешанных эффектов, где точка пересечения сгруппирована объемами в провайдерах, то ваши матрицы проекта должны выглядеть так.
D = dummyvar(provider); X = [ones(n,1) D(:,2) D(:,3) D(:,4)]; y = response; Z = ones(n,1); G = [provider.*bulks];
В более раннем продольном примере исследования, если вы хотите добавить случайные эффекты для точки пересечения и время, сгруппированное предметами, которые участвовали в исследовании, затем ваши матрицы проекта должны быть похожими
X = [ones(n,1),treatment,time, treatment.*time]; y = response; Z = [ones(n,1),time]; G = subject;
fitlme(tbl,formula) и fitlmematrix(X,y,Z,G) эквивалентны в функциональности, таковы что
y n-by-1 вектор отклика.
X n-by-p, фиксированные эффекты проектируют матрицу. fitlme построения это от выражения fixed в formula.
Z R-by-1 массив ячеек с Z{r} будучи n-by-q (r) случайные эффекты проектируют матрицу, созданную из r th выражение в random в formula, r = 1, 2..., R.
G R-by-1 массив ячеек с G{r} будучи n-by-1 сгруппированная переменная, gr, в formula с M (r) уровни или группы.
Например, если tbl таблица или массив набора данных, содержащий переменную отклика y, непрерывные переменные X1 и X2, и сгруппированная переменная g, затем, чтобы подбирать линейную модель смешанных эффектов, которая соответствует выражению формулы 'y ~ X1+ X2+ (X1*X2|g)' использование fitlmematrix(X,y,Z,G) входные параметры должны соответствовать следующему:
y = tbl.y X = [ones(n,1), tbl.X1, tbl.X2] Z = [ones(n,1), tbl.X1, tbl.X2, tbl.X1.*tbl.X2] G = tbl.g
fitlme | fitlmematrix | LinearMixedModel