彼のランダムに歩くブログ、Mike Croucherは、R、MATLAB、Maple、Julia、Python / numpyの5つの異なる統計的プログラミングライブラリを使用して単純な非線形曲線を近似する方法を示しています。このアイデアは、一般的によく言われるモデリングの質問に対する具体的な例を提供することです。
与えられた10個のxとyの値のデータセットに対して、問題はパラメータpに対する最良の値を見つけることです。 1 そしてp 2 次の曲線がyの値に最もよく合うように
p 1 cos(p 2 x)+ p 2 罪(p 1 バツ )
非線形当てはめは解空間の反復探索を含むので、Croucherが与えるように開始パラメータ値が必要です。
p 1 = 1.0、p 2 = 0.2。
それで、どのようにあなたは同じことをするでしょう JMP ?
通常、データテーブルから始めて、AnalyzeメニューのNonlinearプラットフォームを使用して対話的にフィットを開始します。JMPに組み込まれていないこのようなモデルの場合は、式の列にそれを追加し、それをNonlinearダイアログで使用することができます。しかし、JMPのほとんどすべてのものと同様に、必要に応じてJSLスクリプトによって完全に駆動することができます。
これが私のJSLバージョンです。
xv
= [ - 2 、 -1.64 、- 1.33 、 -0.7 、 0 、 0.45 、 1.2 、 1.64 、 2.32 、 2.9 ] ; yv = [ 0.699369 、 0.700462 、 0.695354 、 1.03905 、 1.97389 、
2.411430 、 1.910910 、 0.919576 、 -0.730975 、 -1.42001 ] ;
dt = 新しいテーブル ( "データ" 、
新しいコラム ( "バツ" 、設定値 ( xv )) 、
新しいコラム ( "y" 、設定値 ( yv ) ) ) ;
dt << 非線形 ( Y ( : よ ) 、バツ ( : バツ ) 、
モデル ( パラメータ ( { P1 = 1 、 P2 = 0.2 } 、
P1 * 余弦 ( P2 * : バツ ) + P2 * 正弦 ( P1 * : バツ ) ) ) 、
終了 、信頼限界 ) ;
そのスクリプトは以下の対話式出力を生成します。

他の言語の中には、信頼区間を得るために少し余分な作業を必要とするものがあるため、JMPでは1つの選択肢しかないことを確認できてうれしいです。