JSL での「行列化」の使用こんにちは皆さん。
スクリプトの一部として、レポート (多変量 -> 多変量) からテーブルをマトリックスに抽出したいと考えています。 現在、私はこれに取り組んでいます:
collist = {:"X1", :"X2", :"X3", :"X4", :"X5"};
cor = Eval(Eval Expr(Multivariate(
Y( Expr(collist)),
Estimation Method( "Row-wise" ),
Matrix Format( "Square" ),
Scatterplot Matrix( 0 )
)));
r = (col <<REPORT> </REPORT>
残念ながら、「行列に変換」というメッセージに関するドキュメント (?) はなく、ダイアログが表示されずに結果の行列を変数に格納する方法がわかりません。
当面は「Make into Table」で作業してみます。 しかし、「行列に変換」の使い方を知っておくと便利です。
乾杯、
セバスチャン
Re: JSL での「Make Into Matrix」の使用ありがとう、あなたのコメントは私に正しい道を教えてくれました。行列をグローバル変数として保存するワンクリック方法ほど洗練されていないように見えますが、スクリプトは動作しており、それが重要なのです。
Re: JSL での「Make Into Matrix」の使用Number Col Box() で使用できるすべてのメッセージを確認するには、次のリンクに移動します。
ヘルプ==>スクリプトインデックス==>数値列ボックス
あなたはそれを見るでしょう
オブジェクト << 取得
Number Col Box() からデータのベクトルを取得します。または、Number Col Box() が要素である Table Box() オブジェクトを 1 つ上のレベルで見て、どのようなメッセージが利用できるかを確認することもできます。
Re: JSL での「Make Into Matrix」の使用この手法を二変量フィット プラットフォームに適用して、パラメーター推定値を取得しようとしました。ただし、値は MatrixBox(1) にはなく、彼らそれはの番号列ボックス( 13 )それらを取得しようとするとエラーが発生します。セット全体をグローバル変数として手動で保存し、結果の行列から値を取得することはできますが、jsl を通じてそれを行う方法は見つかりませんでした。
Re: JSL での「Make Into Matrix」の使用回避策があるのは良いことだ。
しかし、Sebastian が指摘しているように、「Make Into Matrix」は、「MatrixBox()」に送信できるメッセージとしてスクリプト インデックスには表示されません (エディターのツールチップには「オブジェクトに対する不明なメッセージ」が表示されます)。 それでも、UI ではコンテキストの選択肢として表示され、JSL 経由でメッセージを送信できます (どちらも彼が言及したモーダル ダイアログを提供します)。
Mark 氏 (または JIm 氏) の方法を使用すると、ダイアログの機能をスクリプトで再現できますが、それでも少し奇妙です。
Re: JSL での「Make Into Matrix」の使用ありがとう、マーク。 それがまさに私が探していたものでした。
Re: JSL での「Make Into Matrix」の使用dt = Open( "$SAMPLE_DATA/Fitness.jmp" );
multi var = dt << Multivariate(
Y( :Age, :Weight, :Oxy, :Runtime, :RunPulse, :RstPulse, :MaxPulse ),
Estimation Method( "Row-wise" ),
Matrix Format( "Square" ),
Scatterplot Matrix(
Density Ellipses( 1 ),
Shaded Ellipses( 0 ),
Ellipse Color( 3 )
)
);
multi var rep = multi var << Report;
corr = multi var rep["Correlations"][MatrixBox(1)] << Get;
Re: JSL での「Make Into Matrix」の使用このコードはダイアログ ボックスをバイパスします。 標準と文書化された JSL コンポーネントを使用します
names default to here(1);
dt=open("$SAMPLE_DATA\semiconductor capability.jmp");
collist = {:"NPN1", :"PNP1", :"NPN2", :"PNP2", :"NPN3"};
cor = Eval(Eval Expr(Multivariate(//invisible,
Y( Expr(collist)),
Estimation Method( "Row-wise" ),
Matrix Format( "Square" ),
Scatterplot Matrix( 0 )
)));
r = ((cor <<REPORT></REPORT>