二変量グラフの頂点を見つけるこんにちは、みんな、
二変量グラフから頂点を取得しようとしています
これまでのところ、スクリプトでパラメータを抽出し、Excelシートで計算しています。
JMPには頂点検索機能が含まれていると確信していますが、見つかりませんでした。
頂点を直接取得する方法はありますか?
ありがとう
<パラメータを抽出するために使用したスクリプト>
dt = Current data Table ();
biv=Bivariate(
Y( :contrast_100cm ),
X( :Offset_Z ),
Fit Polynomial( 2, {Line Color( {212, 73, 88} )} ),
Where( :site == "Para#4" )
);
rbiv = biv << report;
rbiv[tablebox(4)]<<MAKE data="https://community.jmp.com/" table=""></MAKE>
高度な統計モデリング自動化とスクリプト作成データのブレンディングとクリーンアップマスカスタマイゼーション品質およびプロセスエンジニアリングRe: 二変量グラフの頂点を求める出来た
どうもありがとうRe: 二変量グラフの頂点を求める何度も投稿させていただいておりますが、レポートに送信()そして急送()引数は、JMP がカスタマイズを保存することを目的としています。 これらはユーザーを対象としたものではありません。 もちろん、それらを使用することもできます。 しかし、もっと良い方法があります。
プロットに答えを追加したいようです。 この例は、その方法を示しています。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// fit quadratic polynomial interpolating function
biv = dt << Bivariate(
Y( :weight ),
X( :height ),
Fit Line
);
// get reference to report layer
rbiv = biv << Report;
// get parameter estimates
parm = rbiv["Parameter Estimates"][Number Col Box( 1 )] << Get As Matrix;
// compute x intercept
ans = -parm[1] / parm[2];
rbiv[FrameBox(1)] << Add Graphics Script(
Text( { 52.5, 160 }, "X intercept is " || Char( ans ) )
);Re: 二変量グラフの頂点を求めるこんにちは、マクルベイリーさん
もっといろいろ聞いてもいいですか?
一次関数を解くためにスクリプトを少し変更したところ、正しく動作しました。
しかし、ログで結果を確認するのは、ツリーボックスで確認するよりも不便であることがわかりました。
私の知る限り、ツリーボックスを作成してレポートするにはディスパッチ関数が最適です。
そこでスクリプトを次のように変更しました。しかし、機能しません。
各サイトの回答を取得したいと思います(サイトは 4 つあります)。それで私もやってみましたが、やはりうまくいきませんでした。
それを解決するために手を貸していただけませんか
どうもありがとう
-> 私の目的
1.各サイトのanを追加します。
2. レポートに ans を追加します。
-> 私のスクリプト
名前のデフォルトは Here( 1 );
dt = 現在のデータ テーブル();
// 二次多項式補間関数を当てはめる
biv = dt << 二変量(
Y( :CALU_CALU_intr_cy )、
X( :OC オフセット Y um )、
フィットライン( {ラインカラー( {212, 73, 88} )} ),
by(:サイト)、
);
// レポートレイヤーへの参照を取得します
rbiv = biv << レポート;
// パラメータの推定値を取得する
parm = rbiv["パラメータ推定"][Number Col Box( 1 )] << 行列として取得;
// x 切片を計算します
ans = -parm[1] / parm[2];
rbiv<<ディスパッチ(
{"回答"},
「アン」、
フレームボックス、
{マーカーサイズ(3)}
);
ありがとう
Re: 二変量グラフの頂点を求めるの見せる()この関数は、引数に基づいてテキストをログ ウィンドウに書き込みます。ログ ウィンドウはデフォルトでは開きません。 選択する表示 > ログWindows を使用している場合、またはウィンドウ > ログMacintoshを使用している場合。
x 切片が実平面に存在すると仮定して、x 切片を推定するようにスクリプトを変更しました。 それは根の二次解にすぎません。
Names Default To Here( 1 );
// example of data
x = -5::5;
dt = New Table( "Non-Linear Data",
New Column( "X", Numeric, Continuous, Values( x ) ),
New Column( "Y", Numeric, Continuous, Values( x^2 - x - 12 ) )
);
// fit quadratic polynomial interpolating function
biv = dt << Bivariate(
Y( :Y ),
X( :X ),
Fit Polynomial( 2 )
);
// get reference to report layer
rbiv = biv << Report;
// get parameter estimates
parm = rbiv["Parameter Estimates"][NumberColBox( 1 )] << Get As Matrix;
// compute x intercept
ans = parm[2]^2 - 4*parm[3]*parm[1];
x intercepts = If( ans > 0,
(-parm[2] + { -1, 1 } * Sqrt( ans )) / (2*parm[3]);
);
Show( parm, x intercepts );Re: 二変量グラフの頂点を求める親切な回答ありがとうございます。
各コードをコメントで解説してくださったので、分かりやすかったです。
を調べるためにコードを変更しようとしていました一次関数の x 切片。
しかし何も出てきませんでした。
実は「show関数」の仕組みがよく分かりません。
これを解決するのを手伝っていただけますか?
ありがとう
Re: 二変量グラフの頂点を求めるご返信ありがとうございます。
スクリプトをテストしたところ、これがまさに私が探していたものであることがわかりました。
(コード全体を理解していなかったとしても)
しかし、応答曲面によって計算された Offset_Z 値は、手動計算 (微分による) とわずかに異なることがわかりました。
差は 0.0003 未満だったので大した問題ではありませんでした
ご協力に改めて感謝いたします
Re: 二変量グラフの頂点を求めるまたは、別のアプローチは、モデルの適合を使用し、応答曲面マクロを使用して、JMP が応答曲面属性を設定することです。 次に、臨界値を解決する応答曲面出力が得られます。
私が作成したデータを使用して、JMP にこのスクリプトを作成してもらいました。
Fit Model(
Y( :contrast_100cm ),
Effects( :Offset_Z & RS, :Offset_Z * :Offset_Z ),
Personality( "Standard Least Squares" ),
Emphasis( "Effect Leverage" ),
Run(
:contrast_100cm << {Summary of Fit( 0 ), Analysis of Variance( 0 ),
Parameter Estimates( 0 ), Lack of Fit( 0 ), Scaled Estimates( 0 ),
Plot Actual by Predicted( 0 ), Plot Residual by Predicted( 0 ),
Plot Studentized Residuals( 0 ), Plot Effect Leverage( 0 ),
Plot Residual by Normal Quantiles( 0 ), Box Cox Y Transformation( 0 )}
),
SendToReport(
Dispatch(
{"Response contrast_100cm", "Whole Model"},
"Summary of Fit",
OutlineBox,
{Close( 1 )}
),
Dispatch(
{"Response contrast_100cm", "Whole Model"},
"Analysis of Variance",
OutlineBox,
{Close( 1 )}
),
Dispatch(
{"Response contrast_100cm", "Whole Model"},
"Parameter Estimates",
OutlineBox,
{Close( 1 )}
),
Dispatch(
{"Response contrast_100cm"},
"Response Surface",
OutlineBox,
{Close( 0 )}
)
)
)
これは、臨界値を見つける出力の一部です。

Re: 二変量グラフの頂点を求めるJMP にはソルバー自体がありません。 ただし、二次多項式内挿関数をフィッティングしているので、Offset_Z に関する一次導関数をゼロに設定し、Offset_Z を解くだけで済みます。 「頂点」とは関数の最小値または最大値を意味すると思います。
Names Default To Here( 1 );
// example of data
dt = Current Data Table();
// fit quadratic polynomial interpolating function
biv = dt << Bivariate(
Y( :contrast_100cm ),
X( :Offset_Z ),
Fit Polynomial( 2, {Line Color( {212, 73, 88} )} ),
Where( :site == "Para#4" )
);
// get reference to report layer
rbiv = biv << Report;
// get parameter estimates
parms = rbiv[NumberColBox( 1 )] << Get As Matrix;
// compute extremum
extremum = -parms[2] / (2*parms[3]);
Show( parms, extremum );