経験的中央値を計算する中央値には 2 つの定義があります。1 つは (確率) 分布の 0.5 分位数、もう 1 つは有限リスト (ウィキペディアの中央値)。
私は前者を計算する方法を知っていますが、数式列のローリング中央値で実装するために後者を計算するJMP関数またはエレガントで高速な方法を知っている人はいますか?
小さなリストを作成し、これを並べ替え、中間値を取得する...長いテーブルのすべての行に対して行うのは効率的ではないようです
データ表スクリプティングRe: 経験的中央値を計算するやあ@フェリ、
関数「Col Median()」は、スクリプトのインデックスで「複数の評価が効率的になるように内部でキャッシュされる」と述べているため、この場合に役立つ可能性があると思います。 「By」グループ変数を指定することもできます。
スクリプト インデックス (メニュー [ヘルプ]、[スクリプト インデックス]) からの Big クラス データセットの例と、各年齢層について計算された身長の中央値の式:
dt << New Column( "Col Median Height by Age",
numeric,
continuous,
formula( Col Median( :height, :age ) )
);
この回答がお役に立てば幸いです。