JMPの回帰関数Fit Y byXまたはFitCurveプラットフォームによって実行される回帰の一部について、JMPに既存の関数はありますか?
ほとんどのコードで、3Pまたは2次多項式のパラメーターなどが必要な場合。 BY変数を使用してJMPでプラットフォームを呼び出し、「結合されたデータテーブルを作成」します。 ただし、1つの欠点は、JMPがデータテーブルを取得するためにグラフィックをレンダリングする必要があることです...
データが大きいと、BY変数が大きすぎて、JMPが停止するか、RAMが不足するか、この操作を実行しようとすると他の問題が発生します(私の大きなセットの1つに約40kの一意の値を持つBY変数があります)。
1つの「修正」は、byを削除し、データセットごとに個別にFORループでプラットフォームを呼び出すことです。 それが速いかどうかはわかりません... 理想的には、単一の行列または一連の行列を作成し、データの各セットのパラメーターをすばやく取得できます。 これはJSLレイヤー関数にコード化できますが、関数がJMPに存在する場合、オーバーヘッドはより適切に制御されます...
要約する:
1)JMPには、基本的な線形回帰以外のパラメーター係数を計算できる既存の関数がありますか?
2)そうでない場合、現在のJMPプラットフォーム内で目標を達成するためのより良い方法はありますか?
3)さまざまな回帰を実行して係数を返すことができる人々が作成したJSL関数はありますか
ありがとう!
分析スクリプティングRe:JMPの回帰関数元の投稿には、紛らわしい点や不明確な点がたくさんあります。 したがって、それらを解析するのではなく、質問1にコメントを集中します。 回答:はい。 JMPのドキュメントをご覧になりましたか? JMPには文字通り多くの回帰法と非回帰法があります...古き良き昔ながらの通常の最小二乗法から、よりエレガントで柔軟な一般線形モデル、パーティションやニューラルネットワークプラットフォームなどの完全に非線形/非回帰ベースの方法まであります。 。
Re:JMPの回帰関数エコー@P_Bartellデータをモデル化するための多くのオプションがあります。 #2に関しては、あなたの目標がわかりませんか? 1次以上の多項式を作成したいようです。 これは観測データによるものですか、それとも実験によるものですか? 「」と言ったらどういう意味かわかりませんBY変数を使用してJMPでプラットフォームを呼び出します "? どのプラットフォームですか?
ありません好戦的ですが、線形回帰が呼ばれる理由を理解しています線形これは、係数が線形であり、モデルの項ではないためです。
Re:JMPの回帰関数JMPに表示出力からデータテーブルを作成させるよりも、関心のあるテーブルに直接移動して個々の値を抽出する方が多くの場合簡単であることがわかりました。この手法を使用して、By句を使用してすべての出力を生成してから表示を実行するか、一度に1つの表示を生成して必要なものを抽出し、それをテーブル、リスト、またはマトリックスに保存して、次に、出力を閉じて、次の回帰に進みます。

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
biv = dt << Bivariate(
invisible,
Y( :NPN1 ),
X( :PNP1 ),
Fit Special( Degree( 2 ), Centered Polynomial( 0 ), {Line Color( "Medium Dark Red" )} ),
by( :site ) // Where( :SITE == 1 )
);
dtOut = New Table( "The Ouput",
New Column( "Name", character ),
New Column( "Intercept" ),
New Column( "Beta" ),
New Column( "Beta^2" )
);
dtOut << add rows( N Items( biv ) );
For( i = 1, i <= N Items( biv ), i++,
dtOut:Name[i] = Word( -1, Report( biv[i] )[Outline Box( 1 )] << get title, " " );
values = (Report( biv[i] )["Parameter Estimates"][Number Col Box( 1 )]) << get;
dtOut:Intercept[i] = values[1];
dtOut:Beta[i] = values[2];
dtOut:Name( "Beta^2" )[i] = values[1];
);
biv << close window;
Re:JMPの回帰関数非線形プラットフォームは、自由に定義可能な式のパラメーターに適合できます。
対応するドキュメントを確認してください。
Re:JMPの回帰関数これまでの皆さんのコメントに感謝します。 いくつか明確にしようと思います。 基本的に、私は最大40kのサブセットを含むデータセットを持っています。 通常、回帰パラメーターを取得するには、FitCurveまたはFitY by Xを実行し、プラットフォームでBY変数を使用してグラフをサブセットに分割し、線(この場合は2次多項式ですが、それ以外の場合は3P)。 私が見たところ、FitCurveとFitY by Xは、すべてのグラフィックをレンダリングして線を作成し、パラメーターを保存する必要があり、多くのオーバーヘッドがかかります。
グラフィックをレンダリングせずにこの種のことを行う方法があるかどうかはわかりませんでした-必要なフィットからパラメーターを生成するだけのスタンドアロン関数のように。
Re:JMPの回帰関数目的の多項式または3Pパラメーターを作成するための直接関数を認識していないことを明示的に述べておく必要があります。「非表示」出力から直接結果を取得するという私の提案は、出力データテーブルを作成するためのメモリ要件を減らすための提案です。
Re:JMPの回帰関数@txnelsonはい、私は過去にそれで遊んだことがあります、そしてテーブルを非表示にすることはレポートを非表示または非公開にするようにも見えませんでした... レポートを非公開にすることも、グラフィックのレンダリングのオーバーヘッドを回避するための回避策になると思います。