Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

fitlme

Ajuste el modelo lineal de efectos mixtos

Descripción

ejemplo

lme = fitlme(tbl,formula) Devuelve un modelo de efectos mixtos lineal, especificado por, ajustado a las variables de la matriz de tabla o DataSet.Fórmulatbl

ejemplo

lme = fitlme(tbl,formula,Name,Value) Devuelve un modelo lineal de efectos mixtos con opciones adicionales especificadas por uno o más argumentos de par.Name,Value

Por ejemplo, puede especificar el patrón de covarianza de los términos de efectos aleatorios, el método que se utilizará para estimar los parámetros u opciones para el algoritmo de optimización.

Ejemplos

contraer todo

Cargue los datos de ejemplo.

load imports-85

Almacene las variables en una tabla.

tbl = table(X(:,12),X(:,14),X(:,24),'VariableNames',{'Horsepower','CityMPG','EngineType'});

Visualice las primeras cinco filas de la tabla.

tbl(1:5,:)
ans=5×3 table
    Horsepower    CityMPG    EngineType
    __________    _______    __________

       111          21           13    
       111          21           13    
       154          19           37    
       102          24           35    
       115          18           35    

Ajuste un modelo lineal de efectos mixtos para millas por galón en la ciudad, con efectos fijos para caballos de fuerza, y efecto aleatorio no correlacionado para intercepción y caballos de fuerza agrupados por el tipo de motor.

lme = fitlme(tbl,'CityMPG~Horsepower+(1|EngineType)+(Horsepower-1|EngineType)');

En este modelo, es la variable de respuesta, la potencia es la variable predictora y el tipo de motor es la variable de agrupamiento.CityMPG La parte de efectos fijos del modelo corresponde a, porque la intercepción se incluye de forma predeterminada.1 + Horsepower

Dado que los términos de efecto aleatorio para la interceptación y la potencia no están correlacionados, estos términos se especifican por separado. Debido a que el segundo término de efecto aleatorio es sólo para caballos de fuerza, debe incluir un para eliminar la intercepción del segundo término de efecto aleatorio.–1

Visualice el modelo.

lme
lme =  Linear mixed-effects model fit by ML  Model information:     Number of observations             203     Fixed effects coefficients           2     Random effects coefficients         14     Covariance parameters                3  Formula:     CityMPG ~ 1 + Horsepower + (1 | EngineType) + (Horsepower | EngineType)  Model fit statistics:     AIC       BIC     LogLikelihood    Deviance     1099.5    1116    -544.73          1089.5    Fixed effects coefficients (95% CIs):     Name                 Estimate    SE         tStat     DF     pValue         '(Intercept)'          37.276     2.8556    13.054    201    1.3147e-28     'Horsepower'         -0.12631    0.02284     -5.53    201    9.8848e-08       Lower       Upper           31.645       42.906     -0.17134    -0.081269  Random effects covariance parameters (95% CIs): Group: EngineType (7 Levels)     Name1                Name2                Type         Estimate    Lower      '(Intercept)'        '(Intercept)'        'std'        5.7338      2.3773       Upper      13.829  Group: EngineType (7 Levels)     Name1               Name2               Type         Estimate    Lower       'Horsepower'        'Horsepower'        'std'        0.050357    0.02307       Upper       0.10992  Group: Error     Name             Estimate    Lower     Upper      'Res Std'        3.226       2.9078    3.5789  

Tenga en cuenta que los parámetros de covarianza de efectos aleatorios para la interceptación y la potencia son independientes en la pantalla.

Ahora, ajuste un modelo lineal de efectos mixtos para millas por galón en la ciudad, con el mismo término de efectos fijos y efecto aleatorio potencialmente correlacionado para interceptar y caballos de fuerza agrupados por el tipo de motor.

lme2 = fitlme(tbl,'CityMPG~Horsepower+(Horsepower|EngineType)');

Dado que el término de efecto aleatorio incluye la intercepción de forma predeterminada, no tiene que agregar, el término de efecto aleatorio equivale a.1(1 + Horsepower|EngineType)

Visualice el modelo.

lme2
lme2 =  Linear mixed-effects model fit by ML  Model information:     Number of observations             203     Fixed effects coefficients           2     Random effects coefficients         14     Covariance parameters                4  Formula:     CityMPG ~ 1 + Horsepower + (1 + Horsepower | EngineType)  Model fit statistics:     AIC     BIC       LogLikelihood    Deviance     1089    1108.9    -538.52          1077      Fixed effects coefficients (95% CIs):     Name                 Estimate    SE          tStat      DF     pValue         '(Intercept)'         33.824       4.0181     8.4178    201    7.1678e-15     'Horsepower'         -0.1087     0.032912    -3.3029    201     0.0011328       Lower      Upper          25.901       41.747     -0.1736    -0.043806  Random effects covariance parameters (95% CIs): Group: EngineType (7 Levels)     Name1                Name2                Type          Estimate    Lower        '(Intercept)'        '(Intercept)'        'std'           9.4952      4.7022     'Horsepower'         '(Intercept)'        'corr'        -0.96843    -0.99568     'Horsepower'         'Horsepower'         'std'         0.078874    0.039917       Upper          19.174     -0.78738      0.15585  Group: Error     Name             Estimate    Lower     Upper      'Res Std'        3.1845      2.8774    3.5243  

Tenga en cuenta que los parámetros de covarianza de efectos aleatorios para intercepción y potencia están juntos en la pantalla, e incluye la correlación () entre la intercepción y la potencia.'corr'

Cargue los datos de ejemplo.

load flu

La matriz de conjuntos de datos tiene una variable y 10 variables que contienen tasas de gripe estimadas (en 9 regiones diferentes, estimadas a partir de búsquedas de Google®, además de una estimación Nacional de los centros para el control y la prevención de enfermedades, CDC).fluDate

Para ajustar un modelo de efectos mixtos lineales, los datos deben estar en una matriz de DataSet con el formato correcto. Para ajustar un modelo de efectos mixtos lineales con las tasas de influenza como las respuestas, combine las nueve columnas correspondientes a las regiones en una matriz. La nueva matriz de DataSet, debe tener la nueva variable de respuesta, la variable nominal que muestra de qué región es cada estimación, la estimación nacional y la variable de agrupación.flu2FluRateRegionWtdILIDate

flu2 = stack(flu,2:10,'NewDataVarName','FluRate', ...     'IndVarName','Region'); flu2.Date = nominal(flu2.Date);

Visualice las primeras seis filas de.flu2

flu2(1:6,:)
ans =      Date         WtdILI    Region       FluRate     10/9/2005    1.182     NE            0.97       10/9/2005    1.182     MidAtl       1.025       10/9/2005    1.182     ENCentral    1.232       10/9/2005    1.182     WNCentral    1.286       10/9/2005    1.182     SAtl         1.082       10/9/2005    1.182     ESCentral    1.457    

Ajuste un modelo lineal de efectos mixtos con un término de efectos fijos para la estimación nacional, y una intercepción aleatoria que varía según.WtdILIDate El modelo corresponde a

<math display="block">
<mrow>
<mrow>
<msub>
<mrow>
<mi>y</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mo>=</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<msub>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>W</mi>
<mi>t</mi>
<mi>d</mi>
<mi>I</mi>
<mi>L</mi>
<mi>I</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>ε</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mo>,</mo>
<mspace width="1em"></mspace>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mo>.</mo>
<mo>.</mo>
<mo>.</mo>
<mo>,</mo>
<mn>4</mn>
<mn>6</mn>
<mn>8</mn>
<mo>,</mo>
<mspace width="1em"></mspace>
<mi>m</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mo>.</mo>
<mo>.</mo>
<mo>.</mo>
<mo>,</mo>
<mn>5</mn>
<mn>2</mn>
<mo>,</mo>
</mrow>
</math>

Dónde

<math display="block">
<mrow>
<msub>
<mrow>
<mi>y</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</math>
es la observación
<math display="block">
<mrow>
<mi>i</mi>
</mrow>
</math>
para el nivel
<math display="block">
<mrow>
<mi>m</mi>
</mrow>
</math>
de la variable de agrupamiento,Date
<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</math>
es el efecto aleatorio para el nivel
<math display="block">
<mrow>
<mi>m</mi>
</mrow>
</math>
de la variable de agrupación yDate
<math display="block">
<mrow>
<msub>
<mrow>
<mi>ε</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</math>
es el error de observación para la observación
<math display="block">
<mrow>
<mi>i</mi>
</mrow>
</math>
. El efecto aleatorio tiene la distribución previa,

<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
<mo></mo>
<mi>N</mi>
<mo stretchy="false">(</mo>
<mn>0</mn>
<mo>,</mo>
<msubsup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msubsup>
<mo stretchy="false">)</mo>
<mo>,</mo>
</mrow>
</math>

y el término de error tiene la distribución,

<math display="block">
<mrow>
<msub>
<mrow>
<mi>ε</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo></mo>
<mi>N</mi>
<mo stretchy="false">(</mo>
<mn>0</mn>
<mo>,</mo>
<msup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msup>
<mo stretchy="false">)</mo>
<mo>.</mo>
</mrow>
</math>

lme = fitlme(flu2,'FluRate ~ 1 + WtdILI + (1|Date)')
lme =  Linear mixed-effects model fit by ML  Model information:     Number of observations             468     Fixed effects coefficients           2     Random effects coefficients         52     Covariance parameters                2  Formula:     FluRate ~ 1 + WtdILI + (1 | Date)  Model fit statistics:     AIC       BIC       LogLikelihood    Deviance     286.24    302.83    -139.12          278.24    Fixed effects coefficients (95% CIs):     Name                 Estimate    SE          tStat     DF     pValue         '(Intercept)'        0.16385     0.057525    2.8484    466     0.0045885     'WtdILI'              0.7236     0.032219    22.459    466    3.0502e-76       Lower       Upper       0.050813    0.27689      0.66028    0.78691  Random effects covariance parameters (95% CIs): Group: Date (52 Levels)     Name1                Name2                Type         Estimate    Lower       '(Intercept)'        '(Intercept)'        'std'        0.17146     0.13227       Upper       0.22226  Group: Error     Name             Estimate    Lower      Upper       'Res Std'        0.30201     0.28217    0.32324  

Los parámetros de covarianza estimados se muestran en la sección titulada "parámetros de covarianza de efectos aleatorios". El valor estimado de

<math display="block">
<mrow>
<msub>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mi>b</mi>
</mrow>
</msub>
</mrow>
</math>
es 0,17146 y su intervalo de confianza del 95% es [0,13227, 0,22226]. Dado que este intervalo no incluye 0, el término de efectos aleatorios es significativo. Puede probar formalmente la importancia de cualquier término de efectos aleatorios utilizando una prueba de relación de verosimilitud a través del método.compare

La respuesta estimada en una observación es la suma de los efectos fijos y el valor de efecto aleatorio en el nivel de variable de agrupamiento correspondiente a esa observación. Por ejemplo, la tasa de gripe estimada para la observación 28 es

<math display="block">
<mrow>
<mtable columnalign="left">
<mtr>
<mtd>
<mrow>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>y</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>2</mn>
<mn>8</mn>
</mrow>
</msub>
</mrow>
<mo>=</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>β</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>β</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<msub>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>W</mi>
<mi>t</mi>
<mi>d</mi>
<mi>I</mi>
<mi>L</mi>
<mi>I</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<mn>2</mn>
<mn>8</mn>
</mrow>
</msub>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>b</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>1</mn>
<mn>0</mn>
<mo>/</mo>
<mn>3</mn>
<mn>0</mn>
<mo>/</mo>
<mn>2</mn>
<mn>0</mn>
<mn>0</mn>
<mn>5</mn>
</mrow>
</msub>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mo>=</mo>
<mn>0</mn>
<mo>.</mo>
<mn>1</mn>
<mn>6</mn>
<mn>3</mn>
<mn>9</mn>
<mo>+</mo>
<mn>0</mn>
<mo>.</mo>
<mn>7</mn>
<mn>2</mn>
<mn>3</mn>
<mn>6</mn>
<mo>*</mo>
<mo stretchy="false">(</mo>
<mn>1</mn>
<mo>.</mo>
<mn>3</mn>
<mn>4</mn>
<mn>3</mn>
<mo stretchy="false">)</mo>
<mo>+</mo>
<mn>0</mn>
<mo>.</mo>
<mn>3</mn>
<mn>3</mn>
<mn>1</mn>
<mn>8</mn>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mo>=</mo>
<mn>1</mn>
<mo>.</mo>
<mn>4</mn>
<mn>6</mn>
<mn>7</mn>
<mn>4</mn>
<mn>9</mn>
<mo>,</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</math>

Dónde

<math display="block">
<mrow>
<mrow>
<munderover accent="true">
<mrow>
<mi>b</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
</mrow>
</math>
es el mejor predictor lineal imparcial (BLUP) estimado de los efectos aleatorios para la intercepción. Puede calcular este valor de la siguiente manera.

beta = fixedEffects(lme); [~,~,STATS] = randomEffects(lme); % Compute the random-effects statistics (STATS) STATS.Level = nominal(STATS.Level); y_hat = beta(1) + beta(2)*flu2.WtdILI(28) + STATS.Estimate(STATS.Level=='10/30/2005')
y_hat = 1.4674 

Puede visualizar el valor ajustado utilizando el método.fitted

F = fitted(lme); F(28)
ans = 1.4674 

Cargue los datos de ejemplo.

load(fullfile(matlabroot,'examples','stats','shift.mat'))

Los datos muestran las desviaciones absolutas de la característica de calidad objetivo medida a partir de los productos que cada uno de los cinco operadores fabrica durante tres turnos: mañana, noche y noche. Este es un diseño de bloque aleatorio, donde los operadores son los bloques. El experimento está diseñado para estudiar el impacto del tiempo de cambio en el rendimiento. La medida de rendimiento es la desviación absoluta de las características de calidad del valor objetivo. Se trata de datos simulados.

Ajuste un modelo lineal de efectos mixtos con una intercepción aleatoria agrupada por operador para evaluar si el rendimiento difiere significativamente según el tiempo del turno. Utilice el método de máxima verosimilitud y los contrastes restringidos.'effects'

contrastes significan que los coeficientes suman 0, y crea una matriz llamada a para describir el efecto del desplazamiento.'effects'fitlmefixed effects design matrix Esta matriz tiene dos columnas,

<math display="block">
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>S</mi>
<mi>h</mi>
<mi>i</mi>
<mi>f</mi>
<mi>t</mi>
<mo stretchy="false">_</mo>
<mi>E</mi>
<mi>v</mi>
<mi>e</mi>
<mi>n</mi>
<mi>i</mi>
<mi>n</mi>
<mi>g</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</math>
Y
<math display="block">
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>S</mi>
<mi>h</mi>
<mi>i</mi>
<mi>f</mi>
<mi>t</mi>
<mo stretchy="false">_</mo>
<mi>M</mi>
<mi>o</mi>
<mi>r</mi>
<mi>n</mi>
<mi>i</mi>
<mi>n</mi>
<mi>g</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</math>
Dónde

<math display="block">
<mrow>
<mrow>
<mtext>Shift</mtext>
<mtext>_</mtext>
<mtext>Evening</mtext>
</mrow>
<mo>=</mo>
<mrow>
<mo>{</mo>
<mtable columnalign="left left">
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mrow>
<mtext>if Morning</mtext>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>1</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mrow>
<mtext>if Evening</mtext>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>-</mo>
<mn>1</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mrow>
<mtext>if Night</mtext>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</mrow>
</math>

<math display="block">
<mrow>
<mrow>
<mtext>Shift</mtext>
<mtext>_</mtext>
<mtext>Morning</mtext>
</mrow>
<mo>=</mo>
<mrow>
<mo>{</mo>
<mtable columnalign="left left">
<mtr>
<mtd>
<mrow>
<mn>1</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mrow>
<mtext>if Morning</mtext>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mrow>
<mtext>if Evening</mtext>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>-</mo>
<mn>1</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mrow>
<mtext>if Night</mtext>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</mrow>
</math>

El modelo corresponde a

<math display="block">
<mrow>
<mtable columnalign="left right left">
<mtr>
<mtd>
<mrow>
<mrow>
<mtext>Morning Shift: </mtext>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mrow>
<mtext>QCDev</mtext>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>=</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
<msub>
<mrow>
<mtext>Shift</mtext>
<mtext>_</mtext>
<mtext>Morning</mtext>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>ϵ</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo>,</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mrow>
<mtext>Evening Shift: </mtext>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mrow>
<mtext>QCDev</mtext>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>=</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
<msub>
<mrow>
<mtext>Shift</mtext>
<mtext>_</mtext>
<mtext>Evening</mtext>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>ϵ</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo>,</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mrow>
<mtext>Night Shift: </mtext>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mrow>
<mtext>QCDev</mtext>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>=</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
<msub>
<mrow>
<mtext>Shift</mtext>
<mtext>_</mtext>
<mtext>Evening</mtext>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
<msub>
<mrow>
<mtext>Shift</mtext>
<mtext>_</mtext>
<mtext>Morning</mtext>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>ϵ</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo>,</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</math>

Dónde

<math display="block">
<mrow>
<mi>i</mi>
</mrow>
</math>
representa las observaciones, y
<math display="block">
<mrow>
<mi>m</mi>
</mrow>
</math>
representa a los operadores,
<math display="block">
<mrow>
<mi>i</mi>
</mrow>
</math>
= 1, 2,..., 15 y
<math display="block">
<mrow>
<mi>m</mi>
</mrow>
</math>
= 1, 2,..., 5. Los efectos aleatorios y el error de observación tienen las siguientes distribuciones:

<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
<mo></mo>
<mi>N</mi>
<mo stretchy="false">(</mo>
<mn>0</mn>
<mo>,</mo>
<msubsup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msubsup>
<mo stretchy="false">)</mo>
</mrow>
</math>

Y

<math display="block">
<mrow>
<msub>
<mrow>
<mi>ε</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo></mo>
<mi>N</mi>
<mo stretchy="false">(</mo>
<mn>0</mn>
<mo>,</mo>
<msup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msup>
<mo stretchy="false">)</mo>
<mo>.</mo>
</mrow>
</math>

lme = fitlme(shift,'QCDev ~ Shift + (1|Operator)',... 'FitMethod','REML','DummyVarCoding','effects')
lme =  Linear mixed-effects model fit by REML  Model information:     Number of observations              15     Fixed effects coefficients           3     Random effects coefficients          5     Covariance parameters                2  Formula:     QCDev ~ 1 + Shift + (1 | Operator)  Model fit statistics:     AIC       BIC       LogLikelihood    Deviance     58.913    61.337    -24.456          48.913    Fixed effects coefficients (95% CIs):     Name                   Estimate    SE         tStat      DF    pValue        '(Intercept)'            3.6525    0.94109     3.8812    12    0.0021832     'Shift_Evening'        -0.53293    0.31206    -1.7078    12      0.11339     'Shift_Morning'        -0.91973    0.31206    -2.9473    12     0.012206       Lower      Upper         1.6021       5.703     -1.2129     0.14699     -1.5997    -0.23981  Random effects covariance parameters (95% CIs): Group: Operator (5 Levels)     Name1                Name2                Type         Estimate    Lower       '(Intercept)'        '(Intercept)'        'std'        2.0457      0.98207       Upper      4.2612  Group: Error     Name             Estimate    Lower      Upper     'Res Std'        0.85462     0.52357    1.395  

Calcule las mejores estimaciones de predictores no sesgados lineales (BLUP) de efectos aleatorios.

B = randomEffects(lme)
B = 5×1

    0.5775
    1.1757
   -2.1715
    2.3655
   -1.9472

La desviación absoluta estimada de las características de calidad objetivo para el tercer operador que trabaja el turno de noche es

<math display="block">
<mrow>
<mtable columnalign="left">
<mtr>
<mtd>
<mrow>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>y</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mrow>
<mtext>Evening</mtext>
</mrow>
<mo>,</mo>
<mrow>
<mtext>Operator</mtext>
</mrow>
<mn>3</mn>
</mrow>
</msub>
</mrow>
<mo>=</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>β</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>β</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<mrow>
<mtext>Shift</mtext>
<mtext>_</mtext>
<mtext>Evening</mtext>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>b</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>0</mn>
<mn>3</mn>
</mrow>
</msub>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="0.2777777777777778em"></mspace>
<mo>=</mo>
<mn>3</mn>
<mo>.</mo>
<mn>6</mn>
<mn>5</mn>
<mn>2</mn>
<mn>5</mn>
<mo>-</mo>
<mn>0</mn>
<mo>.</mo>
<mn>5</mn>
<mn>3</mn>
<mn>2</mn>
<mn>9</mn>
<mn>3</mn>
<mo>-</mo>
<mn>2</mn>
<mo>.</mo>
<mn>1</mn>
<mn>7</mn>
<mn>1</mn>
<mn>5</mn>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="0.2777777777777778em"></mspace>
<mo>=</mo>
<mn>0</mn>
<mo>.</mo>
<mn>9</mn>
<mn>4</mn>
<mn>8</mn>
<mn>0</mn>
<mn>7</mn>
<mo>.</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</math>

También puede mostrar este valor de la siguiente manera.

F = fitted(lme); F(shift.Shift=='Evening' & shift.Operator=='3')
ans = 0.9481 

Del mismo modo, puede calcular la desviación absoluta estimada de las características de calidad de destino para el tercer operador que trabaja el turno de la mañana como

<math display="block">
<mrow>
<mtable columnalign="left">
<mtr>
<mtd>
<mrow>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>y</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mrow>
<mtext>Morning</mtext>
</mrow>
<mo>,</mo>
<mrow>
<mtext>Operator</mtext>
</mrow>
<mn>3</mn>
</mrow>
</msub>
</mrow>
<mo>=</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>β</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>β</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
</mrow>
<mrow>
<mtext>Shift</mtext>
<mtext>_</mtext>
<mtext>Morning</mtext>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>b</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo>ˆ</mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mn>0</mn>
<mn>3</mn>
</mrow>
</msub>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="0.2777777777777778em"></mspace>
<mo>=</mo>
<mn>3</mn>
<mo>.</mo>
<mn>6</mn>
<mn>5</mn>
<mn>2</mn>
<mn>5</mn>
<mo>-</mo>
<mn>0</mn>
<mo>.</mo>
<mn>9</mn>
<mn>1</mn>
<mn>9</mn>
<mn>7</mn>
<mn>3</mn>
<mo>-</mo>
<mn>2</mn>
<mo>.</mo>
<mn>1</mn>
<mn>7</mn>
<mn>1</mn>
<mn>5</mn>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="0.2777777777777778em"></mspace>
<mo>=</mo>
<mn>0</mn>
<mo>.</mo>
<mn>5</mn>
<mn>6</mn>
<mn>1</mn>
<mn>2</mn>
<mn>7</mn>
<mo>.</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</math>

También puede mostrar este valor de la siguiente manera.

F(shift.Shift=='Morning' & shift.Operator=='3')
ans = 0.5613 

El operador tiende a hacer una menor magnitud de error durante el turno de la mañana.

Cargue los datos de ejemplo.

load(fullfile(matlabroot,'examples','stats','fertilizer.mat'))

La matriz de DataSet incluye datos de un experimento de parcela dividida, donde el suelo se divide en tres bloques basados en el tipo de suelo: arenoso, sedoso y Franco. Cada bloque se divide en cinco parcelas, donde cinco tipos de plantas de tomate (cereza, reliquia, uva, vid y ciruela) se asignan aleatoriamente a estas parcelas. Las plantas de tomate en las parcelas se dividen en subparcelas, donde cada subparcela es tratada por uno de los cuatro fertilizantes. Se trata de datos simulados.

Almacene los datos en una matriz de DataSet llamada, y defina, y como variables categóricas.dsTomatoSoilFertilizer

ds = fertilizer; ds.Tomato = nominal(ds.Tomato); ds.Soil = nominal(ds.Soil); ds.Fertilizer = nominal(ds.Fertilizer);

Ajuste un modelo lineal de efectos mixtos, donde y son las variables de efectos fijos, y el rendimiento medio varía según el bloque (tipo de suelo) y las parcelas dentro de los bloques (tipos de tomate dentro de los tipos de suelo) de forma independiente.FertilizerTomato

Este modelo corresponde a

<math display="block">
<mrow>
<mtable columnalign="left">
<mtr>
<mtd>
<mrow>
<mrow>
<msub>
<mrow>
<mi>y</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
<mo>=</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<munderover>
<mrow>
<mo></mo>
</mrow>
<mrow>
<mi>m</mi>
<mo>=</mo>
<mn>2</mn>
</mrow>
<mrow>
<mn>4</mn>
</mrow>
</munderover>
<mrow>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>1</mn>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mrow>
<mo>[</mo>
<mi>F</mi>
<mo>]</mo>
</mrow>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</mrow>
<mo>+</mo>
<munderover>
<mrow>
<mo></mo>
</mrow>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>2</mn>
</mrow>
<mrow>
<mn>5</mn>
</mrow>
</munderover>
<mrow>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>2</mn>
<mi>j</mi>
</mrow>
</msub>
</mrow>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mrow>
<mo>[</mo>
<mi>T</mi>
<mo>]</mo>
</mrow>
</mrow>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
</mrow>
</mrow>
<mo>+</mo>
<munderover>
<mrow>
<mo></mo>
</mrow>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>2</mn>
</mrow>
<mrow>
<mn>5</mn>
</mrow>
</munderover>
<mrow>
<munderover>
<mrow>
<mo></mo>
</mrow>
<mrow>
<mi>m</mi>
<mo>=</mo>
<mn>2</mn>
</mrow>
<mrow>
<mn>4</mn>
</mrow>
</munderover>
<mrow>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>3</mn>
<mi>m</mi>
<mi>j</mi>
</mrow>
</msub>
</mrow>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mrow>
<mo>[</mo>
<mi>F</mi>
<mo>]</mo>
</mrow>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mrow>
<mo>[</mo>
<mi>T</mi>
<mo>]</mo>
</mrow>
</mrow>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
</mrow>
</mrow>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>k</mi>
</mrow>
</msub>
</mrow>
<mrow>
<msub>
<mrow>
<mi>S</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
<mrow>
<mo stretchy="false">(</mo>
<mi>S</mi>
<mo>*</mo>
<mi>T</mi>
<msub>
<mrow>
<mo stretchy="false">)</mo>
</mrow>
<mrow>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>ε</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
<mo>,</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</math>

Dónde

<math display="block">
<mrow>
<mi>i</mi>
</mrow>
</math>
= 1, 2,..., 60, índice
<math display="block">
<mrow>
<mi>m</mi>
</mrow>
</math>
corresponde a los tipos de fertilizantes,
<math display="block">
<mrow>
<mi>j</mi>
</mrow>
</math>
corresponde a los tipos de tomate, y
<math display="block">
<mrow>
<mi>k</mi>
</mrow>
</math>
= 1, 2, 3 corresponde a los bloques (suelo).
<math display="block">
<mrow>
<msub>
<mrow>
<mi>S</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</math>
representa el
<math display="block">
<mrow>
<mi>k</mi>
</mrow>
</math>
TH tipo de suelo, y
<math display="block">
<mrow>
<mo stretchy="false">(</mo>
<mi>S</mi>
<mo>*</mo>
<mi>T</mi>
<msub>
<mrow>
<mo stretchy="false">)</mo>
</mrow>
<mrow>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</math>
representa el
<math display="block">
<mrow>
<mi>j</mi>
</mrow>
</math>
tipo de tomate, anidado en el
<math display="block">
<mrow>
<mi>k</mi>
</mrow>
</math>
tipo de suelo.
<math display="block">
<mrow>
<mi>I</mi>
<mo stretchy="false">[</mo>
<mi>F</mi>
<msub>
<mrow>
<mo stretchy="false">]</mo>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</math>
es la variable ficticia que representa el nivel
<math display="block">
<mrow>
<mi>m</mi>
</mrow>
</math>
del fertilizante. Semejantemente
<math display="block">
<mrow>
<mi>I</mi>
<mo stretchy="false">[</mo>
<mi>T</mi>
<msub>
<mrow>
<mo stretchy="false">]</mo>
</mrow>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
</mrow>
</math>
es la variable ficticia que representa el nivel
<math display="block">
<mrow>
<mi>j</mi>
</mrow>
</math>
del tipo de tomate.

Los efectos aleatorios y el error de observación tienen estas distribuciones previas:

<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</math>
~ N (0,
<math display="block">
<mrow>
<msubsup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mi>S</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msubsup>
</mrow>
</math>
),
<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</math>
~ N (0,
<math display="block">
<mrow>
<msubsup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mi>S</mi>
<mo>*</mo>
<mi>T</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msubsup>
</mrow>
</math>
), y
<math display="block">
<mrow>
<msub>
<mrow>
<mi>ϵ</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</math>
~ N (0,
<math display="block">
<mrow>
<msup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msup>
</mrow>
</math>
).

lme = fitlme(ds,'Yield ~ Fertilizer * Tomato + (1|Soil) + (1|Soil:Tomato)')
lme =  Linear mixed-effects model fit by ML  Model information:     Number of observations              60     Fixed effects coefficients          20     Random effects coefficients         18     Covariance parameters                3  Formula:     Yield ~ 1 + Tomato*Fertilizer + (1 | Soil) + (1 | Soil:Tomato)  Model fit statistics:     AIC       BIC       LogLikelihood    Deviance     522.57    570.74    -238.29          476.57    Fixed effects coefficients (95% CIs):     Name                                  Estimate    SE        tStat       DF     '(Intercept)'                              77     8.5836      8.9706    40     'Tomato_Grape'                            -16     11.966     -1.3371    40     'Tomato_Heirloom'                     -6.6667     11.966    -0.55714    40     'Tomato_Plum'                          32.333     11.966      2.7022    40     'Tomato_Vine'                             -13     11.966     -1.0864    40     'Fertilizer_2'                         34.667      8.572      4.0442    40     'Fertilizer_3'                         33.667      8.572      3.9275    40     'Fertilizer_4'                         47.667      8.572      5.5607    40     'Tomato_Grape:Fertilizer_2'           -2.6667     12.123    -0.21997    40     'Tomato_Heirloom:Fertilizer_2'             -8     12.123    -0.65992    40     'Tomato_Plum:Fertilizer_2'                -15     12.123     -1.2374    40     'Tomato_Vine:Fertilizer_2'                -16     12.123     -1.3198    40     'Tomato_Grape:Fertilizer_3'            16.667     12.123      1.3748    40     'Tomato_Heirloom:Fertilizer_3'         3.3333     12.123     0.27497    40     'Tomato_Plum:Fertilizer_3'             3.6667     12.123     0.30246    40     'Tomato_Vine:Fertilizer_3'                  3     12.123     0.24747    40     'Tomato_Grape:Fertilizer_4'            13.333     12.123      1.0999    40     'Tomato_Heirloom:Fertilizer_4'            -19     12.123     -1.5673    40     'Tomato_Plum:Fertilizer_4'            -2.6667     12.123    -0.21997    40     'Tomato_Vine:Fertilizer_4'             8.6667     12.123     0.71492    40       pValue        Lower      Upper      4.0206e-11     59.652    94.348        0.18873    -40.184    8.1837        0.58053     -30.85    17.517       0.010059     8.1496    56.517        0.28379    -37.184    11.184     0.00023272     17.342    51.991     0.00033057     16.342    50.991     1.9567e-06     30.342    64.991        0.82701    -27.167    21.834        0.51309    -32.501    16.501        0.22317    -39.501    9.5007        0.19439    -40.501    8.5007        0.17683    -7.8341    41.167        0.78476    -21.167    27.834        0.76387    -20.834    28.167        0.80581    -21.501    27.501        0.27796    -11.167    37.834        0.12492    -43.501    5.5007        0.82701    -27.167    21.834        0.47881    -15.834    33.167  Random effects covariance parameters (95% CIs): Group: Soil (3 Levels)     Name1                Name2                Type         Estimate    Lower        '(Intercept)'        '(Intercept)'        'std'        2.5028      0.027711       Upper      226.05  Group: Soil:Tomato (15 Levels)     Name1                Name2                Type         Estimate    Lower      '(Intercept)'        '(Intercept)'        'std'        10.225      6.1497       Upper      17.001  Group: Error     Name             Estimate    Lower     Upper      'Res Std'        10.499      8.5389    12.908  

el

<math display="block">
<mrow>
<mi>p</mi>
</mrow>
</math>
-los valores correspondientes a las últimas 12 filas de la pantalla de coeficientes de efectos fijos (0,82701 a 0,47881) indican que los coeficientes de interacción entre el tomate y los tipos de fertilizantes no son significativos. Para probar la interacción general entre el tomate y el fertilizante, utilice el método después de rellenar el modelo utilizando contrastes.anova'effects'

El intervalo de confianza para las desviaciones estándar de los términos de efectos aleatorios (

<math display="block">
<mrow>
<msubsup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mi>S</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msubsup>
</mrow>
</math>
), donde la intercepción está agrupada por tierra, es muy grande. Este término no parece significativo.

Vuelva a ajustar el modelo después de eliminar el término de interacción y el término de efectos aleatorios.Tomato:Fertilizer(1 | Soil)

lme = fitlme(ds,'Yield ~ Fertilizer + Tomato + (1|Soil:Tomato)')
lme =  Linear mixed-effects model fit by ML  Model information:     Number of observations              60     Fixed effects coefficients           8     Random effects coefficients         15     Covariance parameters                2  Formula:     Yield ~ 1 + Tomato + Fertilizer + (1 | Soil:Tomato)  Model fit statistics:     AIC       BIC    LogLikelihood    Deviance     511.06    532    -245.53          491.06    Fixed effects coefficients (95% CIs):     Name                     Estimate    SE        tStat       DF    pValue         '(Intercept)'             77.733     7.3293      10.606    52    1.3108e-14     'Tomato_Grape'           -9.1667     9.6045    -0.95441    52       0.34429     'Tomato_Heirloom'        -12.583     9.6045     -1.3102    52        0.1959     'Tomato_Plum'             28.833     9.6045      3.0021    52     0.0041138     'Tomato_Vine'            -14.083     9.6045     -1.4663    52       0.14858     'Fertilizer_2'            26.333     4.5004      5.8514    52    3.3024e-07     'Fertilizer_3'                39     4.5004      8.6659    52    1.1459e-11     'Fertilizer_4'            47.733     4.5004      10.607    52     1.308e-14       Lower      Upper       63.026    92.441     -28.439    10.106     -31.856    6.6895      9.5605    48.106     -33.356    5.1895      17.303    35.364      29.969    48.031      38.703    56.764  Random effects covariance parameters (95% CIs): Group: Soil:Tomato (15 Levels)     Name1                Name2                Type         Estimate    Lower      '(Intercept)'        '(Intercept)'        'std'        10.02       6.0812       Upper      16.509  Group: Error     Name             Estimate    Lower     Upper      'Res Std'        12.325      10.024    15.153  

Puede comparar los dos modelos utilizando el método con la prueba de relación de verosimilitud simulada ya que se prueban tanto un término de efecto fijo como de efecto aleatorio.compare

Cargue los datos de ejemplo.

load(fullfile(matlabroot,'examples','stats','weight.mat'))

contiene datos de un estudio longitudinal, donde 20 sujetos son asignados aleatoriamente a 4 programas de ejercicios (A, B, C, D), y su pérdida de peso se registra durante seis períodos de tiempo de 2 semanas.weight Se trata de datos simulados.

Almacene los datos en una tabla. Definir y como variables categóricas.SubjectProgram

tbl = table(InitialWeight,Program,Subject,Week,y); tbl.Subject = nominal(tbl.Subject); tbl.Program = nominal(tbl.Program);

Ajuste un modelo lineal de efectos mixtos en el que el peso inicial, el tipo de programa, la semana y la interacción entre la semana y el tipo de programa sean los efectos fijos. La intercepción y la semana varían según el tema.

utiliza el programa A como referencia y crea las variables ficticias necesariasfitlme

<math display="block">
<mrow>
<mi>I</mi>
</mrow>
</math>
[.]. Puesto que el modelo ya tiene una intercepción, sólo crea variables ficticias para los programas B, C y D. Esto también se conoce como el método de codificación de variables ficticias.fitlme'reference'

Este modelo corresponde a

<math display="block">
<mrow>
<mtable columnalign="left">
<mtr>
<mtd>
<mrow>
<mrow>
<msub>
<mrow>
<mi>y</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mo>=</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>I</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<msub>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>W</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
</mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>W</mi>
<mi>e</mi>
<mi>e</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<msub>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>k</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>3</mn>
</mrow>
</msub>
</mrow>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mo>[</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>P</mi>
<mi>B</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</mrow>
<mo>]</mo>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>4</mn>
</mrow>
</msub>
</mrow>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mo>[</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>P</mi>
<mi>C</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</mrow>
<mo>]</mo>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>5</mn>
</mrow>
</msub>
</mrow>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mo>[</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>P</mi>
<mi>D</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</mrow>
<mo>]</mo>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>6</mn>
</mrow>
</msub>
</mrow>
<mrow>
<mo>(</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>W</mi>
<mi>e</mi>
<mi>e</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<msub>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>k</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
<mo>*</mo>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mrow>
<mo>[</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>P</mi>
<mi>B</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</mrow>
<mo>]</mo>
</mrow>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
</mrow>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>7</mn>
</mrow>
</msub>
</mrow>
<mrow>
<mo>(</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>W</mi>
<mi>e</mi>
<mi>e</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<msub>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>k</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
<mo>*</mo>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mrow>
<mo>[</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>P</mi>
<mi>C</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</mrow>
<mo>]</mo>
</mrow>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
</mrow>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mn>8</mn>
</mrow>
</msub>
</mrow>
<mrow>
<mo>(</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>W</mi>
<mi>e</mi>
<mi>e</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<msub>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>k</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
<mo>*</mo>
<mi>I</mi>
<mrow>
<msub>
<mrow>
<mrow>
<mo>[</mo>
<mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>P</mi>
<mi>D</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</mrow>
<mo>]</mo>
</mrow>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mspace width="1em"></mspace>
<mspace width="1em"></mspace>
<mo>+</mo>
<mi>b</mi>
<msub>
<mrow></mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
<mo>+</mo>
<mspace width="0.16666666666666666em"></mspace>
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>1</mn>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>W</mi>
<mi>e</mi>
<mi>e</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<msub>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>k</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mo>+</mo>
<mrow>
<msub>
<mrow>
<mi>ε</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mo>,</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</math>

Dónde

<math display="block">
<mrow>
<mi>i</mi>
</mrow>
</math>
= 1, 2,..., 120, y
<math display="block">
<mrow>
<mi>m</mi>
</mrow>
</math>
= 1, 2,..., 20.
<math display="block">
<mrow>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mi>j</mi>
</mrow>
</msub>
</mrow>
</math>
son los coeficientes de efectos fijos,
<math display="block">
<mrow>
<mi>j</mi>
</mrow>
</math>
= 0, 1,..., 8 y
<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</math>
Y
<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>1</mn>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</math>
son efectos aleatorios.
<math display="block">
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>I</mi>
<mi>W</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
</math>
es sinónimo de peso inicial y
<math display="block">
<mrow>
<mi>I</mi>
<mo stretchy="false">[</mo>
<mo></mo>
<mo stretchy="false">]</mo>
</mrow>
</math>
es una variable ficticia que representa un tipo de programa. Por ejemplo,
<math display="block">
<mrow>
<mi>I</mi>
<mo stretchy="false">[</mo>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mrow>
<mi>P</mi>
<mi>B</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<msub>
<mrow>
<mo stretchy="false">]</mo>
</mrow>
<mrow>
<mi>i</mi>
</mrow>
</msub>
</mrow>
</math>
es la variable ficticia que representa el tipo de programa B. Los efectos aleatorios y el error de observación tienen las siguientes distribuciones previas:

<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>0</mn>
<mi>m</mi>
</mrow>
</msub>
<mo></mo>
<mi>N</mi>
<mo stretchy="false">(</mo>
<mn>0</mn>
<mo>,</mo>
<msubsup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msubsup>
<mo stretchy="false">)</mo>
</mrow>
</math>

<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>1</mn>
<mi>m</mi>
</mrow>
</msub>
<mo></mo>
<mi>N</mi>
<mo stretchy="false">(</mo>
<mn>0</mn>
<mo>,</mo>
<msubsup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msubsup>
<mo stretchy="false">)</mo>
</mrow>
</math>

<math display="block">
<mrow>
<msub>
<mrow>
<mi>ε</mi>
</mrow>
<mrow>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo></mo>
<mi>N</mi>
<mo stretchy="false">(</mo>
<mn>0</mn>
<mo>,</mo>
<msup>
<mrow>
<mi>σ</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msup>
<mo stretchy="false">)</mo>
<mo>.</mo>
</mrow>
</math>

lme = fitlme(tbl,'y ~ InitialWeight + Program*Week + (Week|Subject)')
lme =  Linear mixed-effects model fit by ML  Model information:     Number of observations             120     Fixed effects coefficients           9     Random effects coefficients         40     Covariance parameters                4  Formula:     y ~ 1 + InitialWeight + Program*Week + (1 + Week | Subject)  Model fit statistics:     AIC        BIC       LogLikelihood    Deviance     -22.981    13.257    24.49            -48.981   Fixed effects coefficients (95% CIs):     Name                    Estimate     SE           tStat       DF      '(Intercept)'             0.66105      0.25892      2.5531    111     'InitialWeight'         0.0031879    0.0013814      2.3078    111     'Program_B'               0.36079      0.13139       2.746    111     'Program_C'             -0.033263      0.13117    -0.25358    111     'Program_D'               0.11317      0.13132     0.86175    111     'Week'                     0.1732     0.067454      2.5677    111     'Program_B:Week'         0.038771     0.095394     0.40644    111     'Program_C:Week'         0.030543     0.095394     0.32018    111     'Program_D:Week'         0.033114     0.095394     0.34713    111       pValue       Lower         Upper          0.012034       0.14798       1.1741      0.022863    0.00045067    0.0059252     0.0070394       0.10044      0.62113       0.80029      -0.29319      0.22666       0.39068      -0.14706       0.3734      0.011567      0.039536      0.30686       0.68521      -0.15026       0.2278       0.74944      -0.15849      0.21957       0.72915      -0.15592      0.22214  Random effects covariance parameters (95% CIs): Group: Subject (20 Levels)     Name1                Name2                Type          Estimate    Lower       '(Intercept)'        '(Intercept)'        'std'         0.18407     0.12281     'Week'               '(Intercept)'        'corr'        0.66841     0.21076     'Week'               'Week'               'std'         0.15033     0.11004       Upper       0.27587     0.88573     0.20537  Group: Error     Name             Estimate    Lower       Upper       'Res Std'        0.10261     0.087882    0.11981  

el

<math display="block">
<mrow>
<mi>p</mi>
</mrow>
</math>
-los valores 0,022863 y 0,011567 indican efectos significativos de los pesos iniciales del sujeto y el tiempo en la cantidad de peso perdido. La pérdida de peso de los sujetos que están en el programa B es significativamente diferente en relación con la pérdida de peso de los sujetos que están en el programa A. Los límites inferior y superior de los parámetros de covarianza para los efectos aleatorios no incluyen 0, por lo que son significativos. También puede probar la importancia de los efectos aleatorios utilizando el método.compare

Argumentos de entrada

contraer todo

Datos de entrada, que incluyen la variable de respuesta, las variables predictoras y las variables de agrupamiento, especificadas como una tabla o matriz.dataset Las variables predictoras pueden ser variables continuas o de agrupamiento (véase).Agrupar variables Debe especificar el modelo para las variables utilizando.Fórmula

Tipos de datos: table

Fórmula para la especificación del modelo, especificada como un vector de caracteres o un escalar de cadena del formulario.'y ~ fixed + (random1|grouping1) + ... + (randomR|groupingR)' La fórmula distingue entre mayúsculas y minúsculas. Para obtener una descripción completa, consulte.Fórmula

Ejemplo: 'y ~ treatment + (1|block)'

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

Ejemplo: especifica un modelo, donde los términos de efectos aleatorios tienen una estructura de matriz de covarianza diagonal y utiliza el algoritmo de optimización con los parámetros de optimización personalizados definidos en la variable.'CovariancePattern','Diagonal','Optimizer','fminunc','OptimizerOptions',optfitlmefminuncopt

Patrón de la matriz de covarianza de los efectos aleatorios, especificado como el par separado por comas que consta de un vector de caracteres, un escalar de cadena, una matriz lógica simétrica cuadrada, una matriz de cadenas o una matriz de celdas de vectores de caracteres o matrices lógicas.'CovariancePattern'

Si hay términos de efectos aleatorios, el valor de debe ser una matriz de cadenas o matriz de celdas de longitud, donde cada elemento de la matriz especifica el patrón de la matriz de covarianza del vector de efectos aleatorios asociado con el término de efectos aleatorios TH.R'CovariancePattern'Rrr Las opciones para cada elemento siguen.

'FullCholesky'Predeterminado. Matriz de covarianza completa mediante la parametrización de Cholesky. estima todos los elementos de la matriz de covarianza.fitlme
'Full'Matriz de covarianza completa, utilizando la parametrización log-Cholesky. estima todos los elementos de la matriz de covarianza.fitlme
'Diagonal'

Matriz de covarianza diagonal. Es decir, los elementos fuera de la diagonal de la matriz de covarianza están restringidos a ser 0.

(σb12000σb22000σb32)

'Isotropic'

Matriz de covarianza diagonal con varianzas iguales. Es decir, los elementos fuera de la diagonal de la matriz de covarianza están restringidos a ser 0, y los elementos diagonales están restringidos a ser iguales. Por ejemplo, si hay tres términos de efectos aleatorios con una estructura de covarianza isotrópica, esta matriz de covarianza se ve como

(σb2000σb2000σb2)

donde σ2b es la varianza común de los términos de efectos aleatorios.

'CompSymm'

Estructura de simetría compuesta. Es decir, la varianza común a lo largo de las diagonales y la correlación igual entre todos los efectos aleatorios. Por ejemplo, si hay tres términos de efectos aleatorios con una matriz de covarianza que tiene una estructura de simetría compuesta, esta matriz de covarianza se ve como

(σb12σb1,b2σb1,b2σb1,b2σb12σb1,b2σb1,b2σb1,b2σb12)

donde σ2b1 es la varianza común de los términos de efectos aleatorios y σb1,b2 es la covarianza común entre dos términos de efectos aleatorios.

PATMatriz lógica simétrica cuadrada. Si se define por la matriz, y si, entonces el elemento de la matriz de covarianza correspondiente se restringe a ser 0.'CovariancePattern'PATPAT(a,b) = false(a,b)

Ejemplo: 'CovariancePattern','Diagonal'

Ejemplo: 'CovariancePattern',{'Full','Diagonal'}

Tipos de datos: char | string | logical | cell

Método para estimar los parámetros del modelo lineal de efectos mixtos, especificado como el par separado por comas que consta de y cualquiera de los siguientes.'FitMethod'

'ML'Predeterminado. Estimación de máxima verosimilitud
'REML'Estimación de máxima verosimilitud restringida

Ejemplo: 'FitMethod','REML'

Los pesos de observación, especificados como el par separado por comas que consta de y un vector de longitud, donde es el número de observaciones.'Weights'nn

Tipos de datos: single | double

Índices de las filas que se excluyen del modelo de efectos mixtos lineales en los datos, especificados como el par separado por comas que consta de un vector de valores enteros o lógicos.'Exclude'

Por ejemplo, puede excluir las filas 13ª y 67 del ajuste como se indica a continuación.

Ejemplo: 'Exclude',[13,67]

Tipos de datos: single | double | logical

Codificación que se utiliza para las variables ficticias creadas a partir de las variables categóricas, especificadas como el par separado por comas y que consta de uno de los siguientes.'DummyVarCoding'

ValorDescripción
'reference'Predeterminado. Coeficiente para la primera categoría establecida en 0.
'effects'Los coeficientes suman 0.
'full'Una variable ficticia para cada categoría.

Ejemplo: 'DummyVarCoding','effects'

Algoritmo de optimización, especificado como el par separado por comas que consta de y cualquiera de los siguientes.'Optimizer'

'quasinewton'Predeterminado. Utiliza un optimizador de cuasi-Newton basado en región de confianza. Cambiar las opciones del algoritmo utilizando.statset('LinearMixedModel') Si no especifica las opciones, a continuación, utiliza las opciones predeterminadas de.LinearMixedModelstatset('LinearMixedModel')
'fminunc'Debe especificar esta opción.Optimization Toolbox™ Cambiar las opciones del algoritmo utilizando.optimoptions('fminunc') Si no especifica las opciones, a continuación, utiliza las opciones predeterminadas de con establecido en.LinearMixedModeloptimoptions('fminunc')'Algorithm''quasi-newton'

Ejemplo: 'Optimizer','fminunc'

Opciones para el algoritmo de optimización, especificado como el par separado por comas que consta de y una estructura devuelta por o un objeto devuelto por.'OptimizerOptions'statset('LinearMixedModel')optimoptions('fminunc')

  • Si es así, utilice para cambiar las opciones del algoritmo de optimización.'Optimizer''fminunc'optimoptions('fminunc') Consulte las opciones de uso.optimoptions'fminunc' Si es y no proporciona, a continuación, el valor predeterminado para es las opciones predeterminadas creadas por con establecido en.'Optimizer''fminunc''OptimizerOptions'LinearMixedModeloptimoptions('fminunc')'Algorithm''quasi-newton'

  • Si es así, utilice para cambiar los parámetros de optimización.'Optimizer''quasinewton'statset('LinearMixedModel') Si no cambia los parámetros de optimización, utiliza las opciones predeterminadas creadas por:LinearMixedModelstatset('LinearMixedModel')

El optimizador utiliza los siguientes campos en la estructura creada por.'quasinewton'statset('LinearMixedModel')

Tolerancia relativa en el degradado de la función objetiva, especificada como un valor escalar positivo.

Tolerancia absoluta en el tamaño del paso, especificado como un valor escalar positivo.

Número máximo de iteraciones permitidas, especificadas como un valor escalar positivo.

Nivel de visualización, especificado como uno de, o.'off''iter''final'

Método para iniciar la optimización iterativa, especificada como el par separado por comas que consta de y cualquiera de los siguientes.'StartMethod'

ValorDescripción
'default'Un valor predeterminado definido internamente
'random'Un valor inicial aleatorio

Ejemplo: 'StartMethod','random'

Indicador para mostrar el proceso de optimización en la pantalla, especificado como el par separado por comas que consta de y cualquiera o.'Verbose'falsetrue El valor predeterminado es.false

La configuración para invalida el campo en.'Verbose''Display''OptimizerOptions'

Ejemplo: 'Verbose',true

Indicador para comprobar la definitura positiva del hessian de la función objetiva con respecto a los parámetros no restringidos en la convergencia, especificado como el par separado por comas que consta de y cualquiera o.'CheckHessian'falsetrue El valor predeterminado es.false

Especifique como para verificar la optimalidad de la solución o para determinar si el modelo está sobreparametrizado en el número de parámetros de covarianza.'CheckHessian'true

Ejemplo: 'CheckHessian',true

Argumentos de salida

contraer todo

Modelo lineal de efectos mixtos, devuelto como un objeto.LinearMixedModel

Más acerca de

contraer todo

Fórmula

En general, una fórmula para la especificación del modelo es un vector de caracteres o un escalar de cadena del formulario.'y ~ terms' Para los modelos de efectos mixtos lineales, esta fórmula está en el formulario, donde y contiene los efectos fijos y los términos de efectos aleatorios.'y ~ fixed + (random1|grouping1) + ... + (randomR|groupingR)'fixedAleatorio

Supongamos que una tabla contiene lo siguiente:tbl

  • Una variable de respuesta,y

  • Variables predictoras, Xj, que puede ser continua o agrupar variables

  • Agrupar variables, g1, g2, ..., gR,

donde las variables de agrupamiento en Xj Y gr pueden ser categóricas, lógicas, matrices de caracteres, matrices de cadenas o matrices de celdas de vectores de caracteres.

Luego, en una fórmula del formulario, 'y ~ fixed + (random1|g1) + ... + (randomR|gR)', el término corresponde a una especificación de la matriz de diseño de efectos fijos,fixedXAleatorio1 es una especificación de la matriz de diseño de efectos aleatoriosZ1 correspondiente a la variable de agrupacióng1, y de manera similarAleatorioR es una especificación de la matriz de diseño de efectos aleatoriosZR correspondiente a la variable de agrupacióngR. Puede expresar los términos y condiciones utilizando la notación Wilkinson.fixedAleatorio

La notación Wilkinson describe los factores presentes en los modelos. La notación se relaciona con los factores presentes en los modelos, no con los multiplicadores (coeficientes) de esos factores.

La notación WilkinsonFactores en la notación estándar
1Término constante (intercepción)
, donde es un entero positivoX^kk,X X2, ..., Xk
X1 + X2,X1X2
X1*X2, ,X1X2X1.*X2 (elementwise multiplication of X1 and X2)
X1:X2solamenteX1.*X2
- X2No incluyaX2
X1*X2 + X3, , ,X1X2X3X1*X2
X1 + X2 + X3 + X1:X2, , ,X1X2X3X1*X2
X1*X2*X3 - X1:X2:X3, , , , ,X1X2X3X1*X2X1*X3X2*X3
X1*(X2 + X3), , , ,X1X2X3X1*X2X1*X3

notación siempre incluye un término constante a menos que se elimine explícitamente el término using.Statistics and Machine Learning Toolbox™-1 Estos son algunos ejemplos para la especificación lineal del modelo de efectos mixtos.

Examples:

FórmulaDescripción
'y ~ X1 + X2'Efectos fijos para la intercepción, y.X1X2 Esto equivale a.'y ~ 1 + X1 + X2'
'y ~ -1 + X1 + X2'Sin intercepción y efectos fijos para y.X1X2 El término de interceptación implícita se suprime mediante la inclusión.-1
'y ~ 1 + (1 | g1)'Efectos fijos para la intercepción más efecto aleatorio para la intercepción para cada nivel de la variable de agrupamiento.g1
'y ~ X1 + (1 | g1)'Modelo de intercepción aleatoria con pendiente fija.
'y ~ X1 + (X1 | g1)'Intercepción aleatoria y pendiente, con posible correlación entre ellas. Esto equivale a.'y ~ 1 + X1 + (1 + X1|g1)'
'y ~ X1 + (1 | g1) + (-1 + X1 | g1)' Términos de efectos aleatorios independientes para interceptar y talud.
'y ~ 1 + (1 | g1) + (1 | g2) + (1 | g1:g2)'Modelo de intercepción aleatoria con efectos principales independientes para y, además de un efecto de interacción independiente.g1g2

Parametrización de Cholesky

Uno de los supuestos de los modelos de efectos mixtos lineales es que los efectos aleatorios tienen la siguiente distribución previa.

b~N(0,σ2D(θ)),

donde se encuentra una matriz semidefinida a-por-simétrica y positiva, parametrizada por un vector de componente de varianza, es el número de variables en el término de efectos aleatorios, yDqqθqσ2 es la desviación del error de observación. Puesto que la matriz de covarianzas de los efectos aleatorios,, es simétrica, tiene (+ 1)/2 parámetros libres.Dqq Supongamos que es el factor de Cholesky triangular inferior de () tal queLDθ

D(θ)=L(θ)L(θ)T,

a continuación, el vector de parámetro * (+ 1)/2-by-1 no restringido se forma a partir de elementos de la parte triangular inferior de.qqθL

Por ejemplo, si

L=[L1100L21L220L31L32L33],

Entonces

θ=[L11L21L31L22L32L33].

Parametrización log-Cholesky

Cuando los elementos diagonales de la parametrización de Cholesky están limitados a ser positivos, la solución es única.LL La parametrización de log-Cholesky es la misma que la parametrización de Cholesky, excepto que el logaritmo de los elementos diagonales se utiliza para garantizar una parametrización única.L

Por ejemplo, para el ejemplo de 3 por 3 en la parametrización de Cholesky, aplicarLii ≥ 0,

θ=[log(L11)L21L31log(L22)L32log(L33)].

Alternativas

Si el modelo no se describe fácilmente con una fórmula, puede crear matrices para definir los efectos fijos y aleatorios, y ajustar el modelo utilizando.fitlmematrix(X,y,Z,G)

Referencias

[1] Pinherio, J. C., and D. M. Bates. “Unconstrained Parametrizations for Variance-Covariance Matrices”. Statistics and Computing, Vol. 6, 1996, pp. 289–296.

Consulte también

|

Introducido en R2013b