JSLのグラフビルダープロットから密度楕円を使用して相関値を抽出または返しますこんにちは、
JSLは初めてです。 JMPのグラフビルダー関数を使用して数値データとカテゴリデータのグラフをプロットし、楕円を追加して相関関係も確認しています。 将来のプロットにスクリプトを使用していますが、相関(図の赤い矢印で示されている)値を変数のどこかに格納して、論理演算で使用できるようにすることで、少しカスタマイズしたいと思います。たとえば、相関が0.45を超えるグラフのみをプロットしたい場合です。 JSLスクリプト、ヘルプ、またはリードをいただければ幸いです。 続いて私はいくつかを試しましたが、まだ成功していません。
ありがとうございました!
gb = dt << Graph Builder(
Variables( X( :"A_column"n ), Y( :"B_column"n ) ),
Elements(
Points( X, Y, Legend( 3 ) ),
Ellipse( X, Y, Legend( 4 ), Correlation( 1 ), Mean Point( 1 ) )
),
SendToReport(
Dispatch( {"Ellipse"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Pairwise Correlations"}, "", TableBox, {Sort By Column( 7, 1 )} )
)
);
thing_report = gb << report;
Show Properties( thing_report );
corr = biv << Get Correlation Matrix;
Show( corr );

赤い矢印で示された相関関係を保存します。
分析データ表グラフィックススクリプティングウィンドウズRe:JSLのグラフビルダープロットから密度楕円を使用して相関値を抽出または返します連続列と名目列の間でこのような相関関係をチェックする必要があるかどうかはわかりませんが、グラフビルダーから次のような相関関係をエクスポートできます(これがどれほど簡単に壊れるかはわかりません)。
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Size(535, 457),
Show Control Panel(0),
Variables(X(:height), Y(:weight)),
Elements(Points(X, Y, Legend(3)), Ellipse(X, Y, Legend(5), Correlation(1)))
);
ts = Report(gb)[Frame Box(1)] << Find Seg("TextSeg");
corr = ts << get text;
どうやってそこに着いたのか:
1.グラフビルダーを作成し、[カスタマイズ]メニューを開きました。 テキスト要素の色を変更できることに気付いたので、変更しました

2.グラフビルダーのスクリプトを赤いテキストで取得し、色の変更がTextSeg()に影響することを確認しました
Graph Builder(
Size(617, 457),
Show Control Panel(0),
Variables(X(:height), Y(:weight)),
Elements(Points(X, Y, Legend(3)), Ellipse(X, Y, Legend(5), Correlation(1))),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{DispatchSeg(TextSeg(1), {Fill Color("Medium Dark Red")})}
)
)
)
3.テキストセグメントのスクリプトインデックスを確認し、値を取得する1つの方法を見つけました

Re:JSLのグラフビルダープロットから密度楕円を使用して相関値を抽出または返しますこんにちはHadelyMyers、
解決策をありがとうございました。 私のデータでは、1つの列は数値で、もう1つの列はカテゴリ(ほとんどの場合文字)です。 このタイプのデータで多変量を使用する方法がわかりません。 それが、グラフビルダーと密度楕円プロットを使用して、向こうの相関関係を確認している理由です。 残念ながら、あなたが提供したソリューションは私のデータでは機能しませんでした。 あなたの応答を期待しています。
ありがとうございました!
Re:JSLのグラフビルダープロットから密度楕円を使用して相関値を抽出または返しますやあ、
グラフビルダーレポートからこの数値を抽出する方法があるかどうかはわかりませんが、多変量を使用して抽出するのは非常に簡単です(以下のスクリプトを参照)。これはあなたのために働きますか?
Names Default To Here(1);
dt=open("$SAMPLE_DATA/Tablet Production.jmp");
mul=dt<<MULTIVARIATE></MULTIVARIATE>Re:JSLのグラフビルダープロットから密度楕円を使用して相関値を抽出または返しますこんにちはJthi、
どうもありがとう! 出来た!!!
私の限られた理解に基づいて、これは数値データとカテゴリ(数値と文字を含む)データ間の相関関係を確認する方法の1つだと思いました。 私はおそらく間違っているので、もしあれば提案を検討したいと思います。
再度、感謝します!!!
Re:JSLのグラフビルダープロットから密度楕円を使用して相関値を抽出または返しますなぜこのエラーが発生し始めたのかわかりません
'Contains'のアクセスまたは評価における引数が多すぎます

これが私のコードです。
ts = Report( gb1 )[Frame Box( 1 )] << Find Seg( "TextSeg" );
corr = ts << get text;
corr_num = Num( Contains( corr, "\D", "", GLOBALREPLACE ) );
Re:JSLのグラフビルダープロットから密度楕円を使用して相関値を抽出または返しますcontains()の代わりにRegex()を使用したいようです。
Re:JSLのグラフビルダープロットから密度楕円を使用して相関値を抽出または返しますcontains()関数の定義は次のとおりです。

関数の実装には4つの要素があり、Contains()関数は3つの要素のみを処理します。別のアプローチを取る必要があります。