最短の半距離の値を取得する外れ値ボックス プロットの最短の半分の vis から実際の値を取得する方法はありますか?
Re: 最短の半距離の値を取得するこんにちは@vince_faller
この質問のより広範なバージョンは後で質問されましたhttps://community.jmp.com/t5/Discussions/Finding-the-X-range-that-will-include-a-certain-portion-of-the-Y/td-p/225474/jump-to/最初の未読メッセージ
私の解決策は次のとおりです。堅牢かどうか誰かチェックしてもらえますか?ありがとう。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// this is just in case wewant to bring the data back to original row order later.
rowcol = New Column("Row", Numeric, "Continuous", Format("Best", 12), Formula(Row()));
dt << run formulas();
rowcol << suppress eval( true );
// now we start working
dt << Sort( By( :weight ), Order( Ascending ), replace table );
// here is where we define the share of included range (0.5)
difcol = New Column("dif", Numeric, "Continuous", Format("Best", 12), Formula(Abs(:weight - Lag(:weight, -(N Rows() * 0.5)))));
dt << run formulas();
difcol << suppress eval( true );
start = (dt<<GET rows="" where="">= start, row()<=end),1 ,0 ));</GET>Re: 最短の半距離の値を取得するこんにちは、トーニャさん
考えられる理由は何でも、私は次の値を取得します
隣接する(0,0,0,0)
?
最短距離としては決して0-0ではありません。 申し訳ありませんが、実際のデータは掲載できません。 匿名化できるか確認してみます。
*編集* 気にしないでください。 何らかの理由で、私の隣接するものは Framebox(1) に移動し、すべての Framebox(2) が 0 でした。
Re: 最短の半距離の値を取得するこんにちは、トーニャさん
考えられる理由は何でも、私は次の値を取得します
隣接する(0,0,0,0)
?
最短距離としては決して0-0ではありません。 申し訳ありませんが、実際のデータは掲載できません。 匿名化できるか確認してみます。
Re: 最短の半距離の値を取得する共有してくれてありがとう<<ジャーナルを取得アイデア。 本当に賢くて、私にとっては初めてです。
ここでは、生の計算によって制限を取得する試みを示します。 私の限られたテストでは、Journal の数値とよく比較できます。 欠損値とタイを期待どおりに処理しているようです(ただし、何かを見落としている可能性があります)。
// Function for calculating the lower and upper limits of
// Shortest Half Range of a numeric column.
shorth = Function({col}, {M, n, d, i = 0},
M = col << get values;
M = Sort Ascending(M[Loc Nonmissing(M)]);
n = N Row(M) / 2 + Mod(N Row(M), 2);
d = Loc Min(J(1, n, M[(i++) + n] - M[i]));
lo = M[d];
hi = M[d + n - 1];
);
// Test
dt = Open("$SAMPLE_DATA/Big Class.jmp");
shorth(Column(dt, "weight"));
Show(lo, hi);
Re: 最短の半距離の値を取得するこれは実際の答えではありませんが、場合によっては役立つかもしれません。 最短の半分の値を確認したいだけの場合は、インタラクティブ HTML として保存し、赤い括弧の上にマウスを置きます。
Interactive HTML Box Plot Shortest Half ValuesInteractive HTML Box Plot Shortest Half Valuesインタラクティブな HTML 箱ひげ図の最短半値
モバイルブラウザで表示する場合は、赤い括弧をタップするだけです。
Re: 最短の半距離の値を取得する脚本を完成させてくれてありがとう、マーク!私はキャラクター機能を最も効率的に使用したことはありません。
Re: 最短の半距離の値を取得するTonya の解決策は賢明で、要点を的確に捉えています。 スクリプトの残りの部分は実際にはそれほど悪くありません。 変数 jrn には、配布プラットフォーム (外れ値箱ひげ図だけでなく) の文字列表現が含まれています。 そこで、文字列関数を使用して、赤い括弧の目的の端を調べてみましょう。 Contains() で引数を見つけ、Word() を連続して呼び出してビットを抽出します。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dist = dt << Distribution( Y( :weight ) );
rpt = dist << Report;
jrn = rpt[FrameBox(2)] << Get Journal;
pos = Contains( Upper Case( jrn ), "ADJACENTS" );
adj = Word( 2, Sub Str( jrn, pos ), "()" );
lo = Num( Word( 3, adj, "," ) );
hi = Num( Word( 4, adj, "," ) );
Re: 最短の半距離の値を取得するはい、でも特に簡単というわけではありません。これらの値は、ジャーナルの隣接部分の最後の 2 つの数値として表示されます。まず、箱ひげ図のジャーナルを取得する必要があります。
dt=Open("$SAMPLE_DATA/Big Class.jmp");
obj=dt<<DISTRIBUTION></DISTRIBUTION>
次に、隣接する jrn を解析する必要があります。まだその方法を知らない場合は、JSL の経験が豊富な誰かが手伝ってくれるかもしれません。私は解析の詳細についてはよく知りません。
Re: 最短の半距離の値を取得するそのような情報を取得する方法がわかりません。 データの 50% の範囲を最小値から最大値まで調べて一致するかどうかを確認するという実際の単純な方法を試しましたが、失敗しました。 「<< shorthalf 値を取得」できるようになれば、素晴らしい機能強化になります。
support@jmp.com に転送します