基本的な統計分析 > シミュレーション > シミュレーションの例 > 一般化回帰モデルに含める説明変数の検討
公開日: 04/01/2021

Image shown here一般化回帰モデルに含める説明変数の検討

この例では、製薬会社が持つ過去のデータに基づき、錠剤の溶出速度とその速度に影響をおよぼす可能性のある要因について分析します。溶出速度が70に満たない錠剤は、不適合と見なされます。どの要因が溶出速度に影響するのかを調べてみましょう。

この例は、次の手順で進めます。

一般化回帰モデルを作成する。

セロでない項を使って、説明変数を減らしたモデル(縮小モデル)を作成する。

縮小モデルでシミュレーションを実行し、特定の説明変数をモデルに含まれるべきかどうかを検討する。

Image shown hereモデルのあてはめ

この節では、一般化回帰モデルのあてはめを行います。この節の手順を省略するには、「Tablet Production.jmp」データテーブルの「一般化回帰」スクリプトの横の緑の三角ボタンをクリックし、モデルを作成してください。

1. [ヘルプ]>[サンプルデータライブラリ]を選択し、「Tablet Production.jmp」を開きます。

2. [分析]>[モデルのあてはめ]を選択します。

3. 「溶出」を選択し、[Y]をクリックします。

4. 「粉砕時間」から「噴霧器圧力」までを選択し、[追加]をクリックします。

5. 「手法」のリストから[一般化回帰]を選択します。

6. [実行]をクリックします。

7. 「モデルの設定」パネルで[適応型]チェックボックスを選択します。

8. 「モデルの設定」パネルで[実行]をクリックします。

適応型Lassoに基づくモデル 

Image shown here

「適応型Lasso(検証法: AICc, 分布: 正規)」レポートのパラメータ推定値を見てみましょう。パラメータ推定値がゼロでないものは、「粉砕時間」「スクリーンサイズ」「攪拌時間」「攪拌速度」「圧縮機」「滑沢剤の粘度」、および「噴霧量」で、これらが「溶出」に関係している可能性があります。

Image shown hereモデルの縮小

モデルの縮小に進む前に、「Tablet Production.jmp」データテーブルで、列が選択されていないことを確認します。列が選択されたままだと、後述の手順1でも選択された状態になります。列の選択を解除しておくと、誤ってゼロの項の列を含めてしまうことが避けられます。

この節の手順を省略するには、「Tablet Production.jmp」データテーブルの「一般化回帰 縮小モデル」スクリプトの横の緑の三角ボタンをクリックし、縮小モデルを作成してください。

1. 「適応型Lasso(検証法: AICc, 分布: 正規)」レポートの赤い三角ボタンをクリックし、[非ゼロの効果を使って再起動]>[非ゼロの効果を使って再起動]を選択します。

「モデルのあてはめ」ウィンドウが開き、「モデル効果の構成」リストに、パラメータ推定値がゼロでない項が表示されます。応答は「Y」にすでに指定されています。「手法」は[一般化回帰]が選択されています。

2. [実行]をクリックします。

3. 「モデルの設定」パネルで[適応型]チェックボックスを選択します。

4. 「モデルの設定」パネルで[実行]をクリックします。

適応型Lassoによる縮小モデル 

Image shown here

「攪拌速度」の信頼区間(「下側95%」)が、ゼロに非常に近くなっていることに注目してください。次に、シミュレーションによって、現在の推定値が真値であった場合、適応型Lassoを行うと「攪拌速度」の推定値がどれぐらいの割合でゼロになるかを調べてみましょう。

Image shown here攪拌速度の推定値がどれぐらいゼロになるかの考察

以下の手順では、縮小モデル()のレポートを使用します。

1. 「適応型Lasso(検証法: AICc, 分布: 正規)」レポートの赤い三角ボタンをクリックし、[列の保存]>[シミュレーション計算式の保存]を選択します。

「Tablet Production.jmp」データテーブルに、「溶出 シミュレーション計算式」という新しい列が追加されます。

2. (オプション)データテーブルの「列」パネルで、「溶出 シミュレーション計算式」の右側にある+記号をクリックします。

シミュレーション計算式 

Image shown here

この計算式は、あてはめたモデルと「溶出」の分布に従って、各行の値をシミュレートします。「溶出」の分布は、標準偏差が約1.998の正規分布に従うと推定されています。

3. [キャンセル]をクリックします。

4. 縮小モデルのレポートウィンドウに戻ります。「元の説明変数に対する推定値」レポートで、「推定値」列を右クリックし、[シミュレーション]を選択します。

「切り替え元の列」リストで[溶出]が選択されていることを確認します。

5. 「標本数」に「300」と入力します。

「溶出」列を「溶出 シミュレーション計算式」列のシミュレーション値に置き換えて、分析を300回実行します。

6. (オプション)「乱数シード値」に「123」と入力します。

こうすると、この例と同じ値が再現されます。

設定後の「シミュレーション」ウィンドウ 

Image shown here

7. [OK]をクリックします。

テーブルの最初の行は、推定値の初期値であり、除外されます。その他の行は、シミュレートした値です。

8. 「一変量の分布」スクリプトを実行します。

9. Ctrlキーを押しながら、「切片」の赤い三角ボタンをクリックし、[表示オプション]>[要約統計量のカスタマイズ]を選択します。

10. [ゼロの個数]を選択します。

11. [OK]をクリックします。

12. 「攪拌速度」のレポートにスクロールします。

シミュレーションによる攪拌速度の推定値のヒストグラム 

Image shown here

「要約統計量」レポートによると、シミュレーションのうち103/300 = 34.3%で、「攪拌速度」の推定値がゼロになっていることがわかります。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).