JSLによる集計表の追加機能追加の統計情報を含む要約テーブルを取得する方法を知りたいです。
例えば、モード()は数式で使用できる関数ですが、これは機能しません。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Summary( Group( :Age ),
subgroup( :sex ),
Mode( :Height )); // Mode isntead of meanまた、グループの最後の番号または最初の番号を取得してテーブルを要約したいと思います。
高度な統計モデリング消費者および市場調査コンテンツの構成データのブレンディングとクリーンアップデータの探索と視覚化実験計画法マスカスタマイゼーション品質およびプロセスエンジニアリングRe: JSLによる集計表の追加機能について可視性 (非公開、不可視、可視) を設定することで、要約テーブル (または任意のテーブル関数) をより高速に作成できます。非常に大きなファイルを扱っていて、プライベートで使用したモードのみを抽出する必要があるとき。
Re: JSLによる集計表の追加機能について私はこのアプローチをテストしていましたが、残念ながら実現可能ではありません。
JMP では、大きなテーブル (50 万行と数百列) 内の多くの項目を再グループ化するときに、表示分布を使用するには時間がかかりすぎます。
対照的に、要約テーブルのデフォルト関数は非常に高速に計算されます。
Re: JSLによる集計表の追加機能についてこれらを入手する方法としてディストリビューション プラットフォームを使用する素晴らしいトリックです。
ここにリクエストを追加しました。サマリーテーブル関数を任意の定義済み関数 (モード、カート、スキューなど) に拡張します。
Re: JSLによる集計表の追加機能についてやあ@FN 、
表の概要にモードがオプションではない場合でも、求めているものを取得する方法はたくさんあるはずです。 配布プラットフォームの追加の要約統計テーブルでモードを手動で要求するか、次のようにクリックして要求できます。 @ian_jmpと示唆する。 それ以外の場合は、 brady_brady によるアドインを使用してみてください。
JMP 用拡張要約統計アドインこれはメニューからのモードを参照します。
あるいは、次のスクリプトを試してください。
Names Default To Here( 1 );
// Open Data Table: Big Class.jmp
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// get frequencies for modes
dt2 = dt << Summary(
Group( :Age, :sex, :height ),
Link to original data table( 0 )
);
// delete all rows that are not modes
dt2 << select where( Or( :N Rows != Col Max( :N Rows, :age, :sex ), :N Rows == 1 ) );
dt2 << delete rows;
// indicate first and last values per group - Not min and max unless table is first sorted!!!
dt << New Column( "id age", Numeric, "Continuous", Format( "Best", 12 ), Formula( Sum( :age[Index( 1, Row() )] == :age ) ), eval formula, );
dt:id age << delete formula;
// remove all rows that are not first or last
dt << select where( And( :id age != Col Max( :id age, :age ), :id age != 1 ) );
dt << delete rows;
// create one table with all data and sort it
dt3 = dt << concatenate( dt2, Create source column );
dt3 << New Column( "Value",
Character,
"Ordinal",
Formula( If( :id age == 1, "First", :id age > 1, "Last", :N Rows > 1, "Mode" ) ),
Set Property( "Value Order", {Custom Order( {"First", "Mode", "Last"} ), Common Order( 0 )} ),
);
dt3 << sort( By( :age, :sex, :Value ), Order( Ascending ), replace table );
Bigクラスの場合、すべてのグループにクリアモードがあるわけではないことに注意してください。私のアプローチは、最高周波数が 1 に等しいものを削除することでした。
機能するかどうか、または改善が必要な点をお知らせください。
ロン
Re: JSLによる集計表の追加機能についてFWIW (および JSL を少し知っている場合) では、次のようなことができます。
Names Default To Here( 1 );
// Sample data
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Invisible Distribution with 'By' group(s)
dist = dt << Distribution(Continuous Distribution(Column( :height ),Customize Summary Statistics(Mode(1))), By(:age, :sex), Invisible);
// Get the Summary Stats
dt2 = Report(dist[1])[TableBox(2)] << makeCombinedDataTable;
Report(dist[1]) << closeWindow;
// Retain only the Mode
dt3 = dt2 << Subset(Rows(dt2 << getRowsWhere(:Column 1 == "Mode")));
dt3 << setName("Mode Values");
Column(dt3, "Column 1") << setName("Statistic");
Column(dt3, "Column 2") << setName("Value");
Close(dt2, NoSave);
も検討しますJMPウィッシュリスト。
Re: JSL による要約表の追加機能JMP には、グループ化された要約統計を生成する方法が多数あります。どの方法でも、一部の統計は提供されますが、他の統計は提供されません。
配布プラットフォームとヘッダー統計は、他のもの(グラフ ビルダー、JSL 列... 機能)よりもはるかに優れています。
https://community.jmp.com/t5/Community-Wish-List/Wish-list-new-Label-user- experience/idc-p/771691/highlight/true#M60
他のプラットフォームのプログラマーも追いつきたがっていると思いますが...