Main Content

fitted

クラス: GeneralizedLinearMixedModel

一般化線形混合効果モデルからの当てはめた応答

説明

mufit = fitted(glme) は、一般化線形混合効果モデル glme の当てはめた条件付き応答を返します。

mufit = fitted(glme,Name,Value) は、1 つ以上の名前と値のペアの引数で指定された追加オプションを使用して、当てはめた応答を返します。たとえば、当てはめた限界応答の計算を指定できます。

入力引数

すべて展開する

一般化線形混合効果モデル。GeneralizedLinearMixedModel オブジェクトとして指定します。このオブジェクトのプロパティとメソッドについては、GeneralizedLinearMixedModel を参照してください。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。

R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。

条件付き応答のインジケーター。'Conditional' と、以下のいずれかで構成されるコンマ区切りのペアとして指定します。

説明
true固定効果と変量効果の両方からの寄与 (条件付き)
false固定効果のみからの寄与 (限界)

当てはめた限界応答の値を得るため、fitted は、変量効果の経験的ベイズ予測子ベクトル b を 0 に設定した状態で、応答の条件付き平均を計算します。詳細については、条件付き応答と限界応答を参照してください。

例: 'Conditional',false

出力引数

すべて展開する

n 行 1 列のベクトルとして返される、当てはめた応答値。ここで、n は観測値の数です。

すべて展開する

標本データを読み込みます。

load mfr

このシミュレーションされたデータは、世界中で 50 の工場を操業している製造企業から取得しており、各工場が完成品の生産のためにバッチ処理を実行しています。同社は各バッチの欠陥数を減少させるために新たな製造プロセスを開発しました。新しいプロセスの効果をテストするため、同社は実験に参加させる 20 工場を無作為に選びました。10 工場では新プロセスを実施しますが、残りの 10 工場では旧プロセスの実行を続けます。各 20 工場で、同社は 5 つのバッチ (合計 100 バッチ) を実行し以下のデータを記録しました。

  • 新しいプロセスがバッチに使用されたかどうかを示すフラグ (newprocess)

  • 各バッチの処理時間。時間単位 (time)

  • バッチの温度。摂氏 (temp)

  • バッチで使用する化学薬品の供給業者 (AB または C) を示すカテゴリカル変数 (supplier)

  • バッチ内の欠陥数 (defects)

またデータに含まれる time_devtemp_dev は、摂氏 20 度で 3 時間の標準プロセスから得られる時間と温度の絶対偏差をそれぞれ表します。

固定効果予測子として newprocesstime_devtemp_dev および supplier を使用して一般化線形混合効果モデルを当てはめます。工場特有の変動に起因して品質に差がある可能性を考慮するために、factory 別にグループ化された切片の変量効果項を含めます。応答変数 defects はポアソン分布であり、このモデルの適切なリンク関数は対数です。係数の予測にラプラス近似メソッドを使用します。ダミー変数エンコードを 'effects' として指定すると、ダミー変数の係数の合計が 0 になります。

欠陥数はポアソン分布を使用してモデル化できます

defectsijPoisson(μij)

これは一般化線形混合効果モデルに対応します

log(μij)=β0+β1newprocessij+β2time_devij+β3temp_devij+β4supplier_Cij+β5supplier_Bij+bi,

ここで

  • defectsij は、バッチ j 処理中の工場 i で実行されたバッチで観測された欠陥数です。

  • μij は、バッチ j (j=1,2,...,5) 処理中の工場 i (i=1,2,...,20) に対応する欠陥の平均数です。

  • newprocessijtime_devij および temp_devij は、バッチ j 処理中の工場 i に対応する各変数の測定値です。たとえば newprocessij は、工場 i で実行されたバッチ j 処理中に新プロセスが使用されたかどうかを示します。

  • supplier_Cij および supplier_Bij はエフェクト (ゼロサム) コーディングを使用するダミー変数であり、バッチ j 処理中に工場 i で実行されたバッチに対して、それぞれ会社 C または B が加工化学薬品を供給したかどうかを示します。

  • biN(0,σb2) は、工場特有の品質変動に相当する、各工場 i の変量効果の切片です。

glme = fitglme(mfr,'defects ~ 1 + newprocess + time_dev + temp_dev + supplier + (1|factory)', ...
    'Distribution','Poisson','Link','log','FitMethod','Laplace','DummyVarCoding','effects');

モデルの当てはめた条件付き平均値を生成します。

mufit = fitted(glme);

観測値と当てはめた値の散布図を生成します。

figure
scatter(mfr.defects,mufit)
title('Residuals versus Fitted Values')
xlabel('Fitted Values')
ylabel('Residuals')

詳細

すべて展開する