予測モデルおよび発展的なモデル > 非線形回帰 > モデルライブラリを使用した列の作成
公開日: 04/01/2021

モデルライブラリを使用した列の作成

モデルライブラリは、パラメータおよびその初期値が設定された計算式を作成するのに便利です。「非線形回帰」起動ウィンドウの[モデルライブラリ]ボタンをクリックすると、ライブラリが開きます。リストでモデルを選択すると、その計算式が「計算式」ボックスに表示されます。

図14.7 「非線形モデルライブラリ」ダイアログボックス 

[グラフの表示]をクリックすると、モデルに説明変数が1つしかない場合は2次元上に曲線を、2つある場合は3次元上に曲面プロットを表示します。説明変数(X)が3つ以上あるモデルでは、グラフが作成されません。グラフウィンドウでは、スライダを使うか値を入力することによって、パラメータの初期値を変更できます。

図14.8 モデルライブラリのグラフ例 

[リセット]ボタンを押すと、パラメータの初期値がデフォルトの値に戻ります。

プロットに実際のデータ点を表示するには、[点の表示]をクリックします。図14.9のようなウィンドウが開いたら、任意の列に[X]と[Y]の役割を割り当て、必要に応じてオプションの[グループ]変数を指定します。[グループ]に列を指定すると、カテゴリカル変数の水準ごとにモデルをあてはめることができます。このウィンドウで[グループ]の列を指定した場合は、プラットフォームの起動ウィンドウでも[グループ化]の列を指定してください。

図14.9 役割の選択 

用意されているほとんどのモデルにおいて、あらかじめ決められた定数が初期値に使われます。データ点を表示することにより、モデルがどれほどデータにあてはまるかを確認しながら、パラメータ値を調整することができます。「US population.jmp」の例で点を表示すると、図14.10のようになります。

図14.10 点の表示 

[点の表示]をクリックした後で[計算式の作成]をクリックすると、モデルライブラリで選択したモデルに基づいた名前の新しいデータテーブル列が作成されます。列には計算式が含まれ、そのパラメータ値は最後に設定した初期値になっています。

注: [グラフの表示]ボタンまたは[点の表示]ボタンをクリックする前に[計算式の作成]をクリックした場合は、XYの役割と、オプションとしてグループ変数を指定するよう求められます(図14.9)。変数を指定するとプロットに戻り、必要に応じてパラメータの初期値を調整できます。そこで再び[計算式の作成]をクリックすると、新しい列が作成されます。

データテーブル内に計算式が作成されたら、「非線形回帰」起動ダイアログボックスで計算式の列を[X, 予測式列]に指定し、分析を続けます。

非線形モデルライブラリのカスタマイズ

モデルライブラリは、「NonlinLib.jsl」というビルトインスクリプトによって作成されます。このスクリプトは、JMPのインストールフォルダ(Windowsの場合)またはアプリケーションパッケージ(macOSの場合)にある「Resources¥Builtins」フォルダに含まれています。このスクリプトを変更すると、非線形回帰モデルライブラリをカスタマイズできます。

モデルを追加するには、Listofmodellist#というリストに3つの行を加える必要があります。この3つの行は次のような情報であり、これらをリスト内に指定します。

モデル名(引用符で囲んだ文字列)

モデルの計算式(式)

モデルのスケール(範囲)

たとえば、次の式で表される「単純な指数成長モデル」というモデルを追加するとしましょう。

この場合、「NonlinLib.jsl」スクリプトのListofmodellist#リストに以下の行を挿入します。

{//単純な指数成長モデル
		"単純な指数成長モデル",
		Expr(Parameter({b1=2, k=0.5}, b1*exp(k * :X))),
		lowx = -1; highx = 2; lowy = 0;  highy = 2},

以下の点に注意してください。

第1行は、リストの開始を意味する開く括弧とコメント(オプション)から成ります。第2行に入力した文字列がモデル名としてモデルライブラリウィンドウに表示されます。

lowxhighxlogy、およびhighyは、表示されるグラフの範囲を表します。

上記の例では最後にカンマがついていますが、Listofmodellist#リストの最後のエントリになる場合には、カンマは必要ありません。

説明変数が3つ以上あるモデルでは、最後の行(グラフの範囲を指定する行)に"Not Available"という文字列を引用符で囲んで入力します。

モデルライブラリにあるモデルを削除するには、Listofmodellist#リストから該当する行を削除します。

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