randomEffects
クラス: LinearMixedModel
変量効果と関連する統計の推定
構文
説明
入力引数
lme
— 線形混合効果モデル
LinearMixedModel
オブジェクト
線形混合効果モデル。fitlme
または fitlmematrix
を使用して構築した LinearMixedModel
オブジェクトとして指定します。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名、Value
は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。
R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name
を引用符で囲みます。
Alpha
— 有意水準
0.05 (既定値) | 0 ~ 1 の範囲のスカラー値
有意水準。'Alpha'
と 0 ~ 1 の範囲にあるスカラー値から構成されるコンマ区切りのペアとして指定します。値が α の場合、信頼度は 100 × (1 – α)% です。
たとえば、99% の信頼区間の場合は、次のように信頼度を指定できます。
例: 'Alpha',0.01
データ型: single
| double
DFMethod
— 自由度の近似の計算方法
'residual'
(既定値) | 'satterthwaite'
| 'none'
変量効果係数を 0 に対して検定する t 統計での自由度の近似を計算する方法。'DFMethod'
と次のいずれかで構成されるコンマ区切りのペアで指定します。
'residual' | 既定の設定。自由度は定数で n – p に等しいと仮定されます。ここで n は観測値の数、p は固定効果の数です。 |
'satterthwaite' | サタースウェイトの近似法。 |
'none' | すべての自由度は無限大に設定されます。 |
たとえば、次のようにサタースウェイトの近似法を指定できます。
例: 'DFMethod','satterthwaite'
出力引数
B
— 変量効果の推定最良線形不偏予測量
列ベクトル
列ベクトルとして返される、線形混合効果モデル lme
の変量効果の推定最良線形不偏予測量。
lme
には R グループ化変数 g1、g2、...、gR があり、それぞれレベルが m1、m2、...、mR であると仮定します。また、q1、q2、...、qR は、それぞれ g1, g2、...、gR に関連付けられている変量効果の長さであるとします。B
は、次の長さの列ベクトルです。q1*m1 + q2*m2 + ... + qR*mR。
randomEffects
は、各グループ化変数の各レベルに対応する変量効果ベクトルの最良線形不偏予測量を次のように連結して B
を作成します。[g1level1; g1level2; ...; g1levelm1; g2level1; g2level2; ...; g2levelm2; ...; gRlevel1; gRlevel2; ...; gRlevelmR]'
Bnames
— 変量効果係数の名前
テーブル
B
の変量効果係数の名前。テーブルとして返します。
stats
— 変量効果 BLUP と関連する統計の推定
データセット配列
変量効果 BLUP と関連する統計の推定。固定効果ごとに 1 つの行および次の統計ごとに 1 つの列を含むデータセット配列として返されます。
Group | 変量効果に関連付けられているグループ化変数 |
Level | 変量効果に対応するグループ化変数内のレベル |
Name | 変量効果係数の名前 |
Estimate | 変量効果の最良線形不偏予測量 (BLUP) |
SEPred | 推定の標準誤差 (BLUP から変量効果を差し引いた値) |
tStat | 変量効果が 0 である検定の t 統計 |
DF | t 統計の推定自由度 |
pValue | t 統計の p 値 |
Lower | 変量効果の 95% 信頼区間の下限 |
Upper | 変量効果の 95% 信頼区間の上限 |
例
変量効果の推定と係数名の表示
標本データを読み込みます。
load carbig
ガロンあたりの走行マイル数 (MPG) の線形混合効果モデルを近似します。加速度と馬力は固定効果で、モデル年によってグループ化される切片と加速度については相関された変量効果の可能性があります。まず、データをテーブルに保存します。
tbl = table(Acceleration,Horsepower,Model_Year,MPG);
モデルを近似する。
lme = fitlme(tbl, 'MPG ~ Acceleration + Horsepower + (Acceleration|Model_Year)');
変量効果係数の BLUP を計算し、対応する変量効果の名前を表示します。
[B,Bnames] = randomEffects(lme)
B = 26×1
3.1270
-0.2426
-1.6532
-0.0086
1.2075
-0.2179
4.4107
-0.4887
-1.3103
-0.0208
⋮
Bnames=26×3 table
Group Level Name
______________ ______ ________________
{'Model_Year'} {'70'} {'(Intercept)' }
{'Model_Year'} {'70'} {'Acceleration'}
{'Model_Year'} {'71'} {'(Intercept)' }
{'Model_Year'} {'71'} {'Acceleration'}
{'Model_Year'} {'72'} {'(Intercept)' }
{'Model_Year'} {'72'} {'Acceleration'}
{'Model_Year'} {'73'} {'(Intercept)' }
{'Model_Year'} {'73'} {'Acceleration'}
{'Model_Year'} {'74'} {'(Intercept)' }
{'Model_Year'} {'74'} {'Acceleration'}
{'Model_Year'} {'75'} {'(Intercept)' }
{'Model_Year'} {'75'} {'Acceleration'}
{'Model_Year'} {'76'} {'(Intercept)' }
{'Model_Year'} {'76'} {'Acceleration'}
{'Model_Year'} {'77'} {'(Intercept)' }
{'Model_Year'} {'77'} {'Acceleration'}
⋮
切片と加速度は、潜在的に相関性のある変量効果をもつため、車のモデル年でグループ化されます。また、randomEffects
はグループ化変数の各レベルにおいて切片と加速度に個別の行を作成します。
変量効果の共分散パラメーターを計算します。
[~,~,stats] = covarianceParameters(lme)
stats=2×1 cell array
{3x7 classreg.regr.lmeutils.titleddataset}
{1x5 classreg.regr.lmeutils.titleddataset}
stats{1}
ans = Covariance Type: FullCholesky Group Name1 Name2 Type Model_Year {'(Intercept)' } {'(Intercept)' } {'std' } Model_Year {'Acceleration'} {'(Intercept)' } {'corr'} Model_Year {'Acceleration'} {'Acceleration'} {'std' } Estimate Lower Upper 3.3475 1.2862 8.7119 -0.87971 -0.98501 -0.29675 0.33789 0.1825 0.62558
相関値は、変量効果が負の相関関係に見えることを示しています。切片と加速度に対する変量効果をプロットし、これを確認します。
plot(B(1:2:end),B(2:2:end),'r*')
変量効果の推定値および関連する統計の計算
標本データを読み込みます。
load('fertilizer.mat');
このデータセット配列には土壌の種類に基づいて土壌が 3 つのブロックに分けられている分割プロット試験のデータが含まれています。土壌の種類は砂質、シルトおよび粘土質です。各ブロックは 5 つのプロットに分割され、5 種類のトマトの苗木 (チェリー、エアルーム、グレープ、枝付き、プラム) がランダムにこれらのプロットに割り当てられます。その後、プロット内のトマトの苗木はサブプロットに分割され、それぞれのサブプロットが 4 つの肥料の中の 1 つにより処置されます。このデータは、シミュレーションされたものです。
実用目的でこのデータを ds
という名前のデータセット配列に保存し、Tomato
、Soil
および Fertilizer
をカテゴリカル変数として定義します。
ds = fertilizer; ds.Tomato = nominal(ds.Tomato); ds.Soil = nominal(ds.Soil); ds.Fertilizer = nominal(ds.Fertilizer);
線形混合効果モデルを近似します。Fertilizer
および Tomato
は固定効果変数であり、平均収穫量はブロック (土壌の種類) とブロック内のプロット (土壌の種類の中のトマトの種類) によって独立して変化します。
lme = fitlme(ds,'Yield ~ Fertilizer * Tomato + (1|Soil) + (1|Soil:Tomato)');
変量効果の BLUP と関連する統計を計算します。
[~,~,stats] = randomEffects(lme)
stats = Random effect coefficients: DFMethod = 'Residual', Alpha = 0.05 Group Level Name {'Soil' } {'Loamy' } {'(Intercept)'} {'Soil' } {'Sandy' } {'(Intercept)'} {'Soil' } {'Silty' } {'(Intercept)'} {'Soil:Tomato'} {'Loamy Cherry' } {'(Intercept)'} {'Soil:Tomato'} {'Loamy Grape' } {'(Intercept)'} {'Soil:Tomato'} {'Loamy Heirloom'} {'(Intercept)'} {'Soil:Tomato'} {'Loamy Plum' } {'(Intercept)'} {'Soil:Tomato'} {'Loamy Vine' } {'(Intercept)'} {'Soil:Tomato'} {'Sandy Cherry' } {'(Intercept)'} {'Soil:Tomato'} {'Sandy Grape' } {'(Intercept)'} {'Soil:Tomato'} {'Sandy Heirloom'} {'(Intercept)'} {'Soil:Tomato'} {'Sandy Plum' } {'(Intercept)'} {'Soil:Tomato'} {'Sandy Vine' } {'(Intercept)'} {'Soil:Tomato'} {'Silty Cherry' } {'(Intercept)'} {'Soil:Tomato'} {'Silty Grape' } {'(Intercept)'} {'Soil:Tomato'} {'Silty Heirloom'} {'(Intercept)'} {'Soil:Tomato'} {'Silty Plum' } {'(Intercept)'} {'Soil:Tomato'} {'Silty Vine' } {'(Intercept)'} Estimate SEPred tStat DF pValue Lower Upper 1.0061 2.3374 0.43044 40 0.66918 -3.718 5.7303 -1.5236 2.3374 -0.65181 40 0.51825 -6.2477 3.2006 0.51744 2.3374 0.22137 40 0.82593 -4.2067 5.2416 12.46 7.1765 1.7362 40 0.090224 -2.0443 26.964 -2.6429 7.1765 -0.36827 40 0.71461 -17.147 11.861 16.681 7.1765 2.3244 40 0.025269 2.1766 31.185 -5.0172 7.1765 -0.69911 40 0.48853 -19.522 9.4872 -4.6874 7.1765 -0.65316 40 0.51739 -19.192 9.8169 -17.393 7.1765 -2.4235 40 0.019987 -31.897 -2.8882 -7.3679 7.1765 -1.0267 40 0.31075 -21.872 7.1364 -8.621 7.1765 -1.2013 40 0.23671 -23.125 5.8833 7.669 7.1765 1.0686 40 0.29165 -6.8353 22.173 0.28246 7.1765 0.039359 40 0.9688 -14.222 14.787 4.9326 7.1765 0.68732 40 0.49585 -9.5718 19.437 10.011 7.1765 1.3949 40 0.17073 -4.4935 24.515 -8.0599 7.1765 -1.1231 40 0.2681 -22.564 6.4444 -2.6519 7.1765 -0.36952 40 0.71369 -17.156 11.852 4.405 7.1765 0.6138 40 0.54282 -10.099 18.909
最初の 3 つの行には、グループ化変数 Soil
の 3 つのレベル Loamy
、Sandy
および Silty
の変量効果の推定と統計が含まれています。対応する 値 0.66918、0.51825 および 0.82593 は、これらの変量効果が 0 と有意には異ならないことを示します。続く 15 行には、切片について推定した変量効果の BLUP が含まれています。これらは、Soil で入れ子にされている変数 Tomato でグループ化されています (Tomato
と Soil
の交互作用)。
オプションを指定した信頼区間の計算
標本データを読み込みます。
load shift
シフトの時間によってパフォーマンスに有意差があるかどうかを評価するために、作業者別のランダムな切片をもつ線形混合効果モデルに当てはめます。制限付き最尤法を使用します。
lme = fitlme(shift,'QCDev ~ Shift + (1|Operator)');
自由度の計算に残差オプションを使用して、変量効果に対する 99% の信頼区間を計算します。これは既定のメソッドです。
[~,~,stats] = randomEffects(lme,'Alpha',0.01)
stats = Random effect coefficients: DFMethod = 'Residual', Alpha = 0.01 Group Level Name Estimate SEPred {'Operator'} {'1'} {'(Intercept)'} 0.57753 0.90378 {'Operator'} {'2'} {'(Intercept)'} 1.1757 0.90378 {'Operator'} {'3'} {'(Intercept)'} -2.1715 0.90378 {'Operator'} {'4'} {'(Intercept)'} 2.3655 0.90378 {'Operator'} {'5'} {'(Intercept)'} -1.9472 0.90378 tStat DF pValue Lower Upper 0.63902 12 0.53482 -2.1831 3.3382 1.3009 12 0.21772 -1.5849 3.9364 -2.4027 12 0.033352 -4.9322 0.58909 2.6174 12 0.022494 -0.39511 5.1261 -2.1546 12 0.052216 -4.7079 0.81337
自由度の計算にサタースウェイトの近似法を使用して、変量効果に対する 99% の信頼区間を計算します。
[~,~,stats] = randomEffects(lme,'DFMethod','satterthwaite','Alpha',0.01)
stats = Random effect coefficients: DFMethod = 'Satterthwaite', Alpha = 0.01 Group Level Name Estimate SEPred {'Operator'} {'1'} {'(Intercept)'} 0.57753 0.90378 {'Operator'} {'2'} {'(Intercept)'} 1.1757 0.90378 {'Operator'} {'3'} {'(Intercept)'} -2.1715 0.90378 {'Operator'} {'4'} {'(Intercept)'} 2.3655 0.90378 {'Operator'} {'5'} {'(Intercept)'} -1.9472 0.90378 tStat DF pValue Lower Upper 0.63902 6.4253 0.5449 -2.684 3.839 1.3009 6.4253 0.23799 -2.0858 4.4372 -2.4027 6.4253 0.050386 -5.433 1.09 2.6174 6.4253 0.037302 -0.89598 5.627 -2.1546 6.4253 0.071626 -5.2087 1.3142
通常、サタースウェイト法では自由度 (DF
) が小さい値になるので、変量効果の推定値に対する p 値 (pValue
) と信頼区間 (Lower
および Upper
) が大きくなります。
参考
LinearMixedModel
| fitlme
| coefCI
| coefTest
| fixedEffects
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)