JSL スクリプトで行のサブセットの Col Mean () を計算していますか?こんにちは、JMP コミュニティです。
定義された変数の列平均 (またはその他の統計) を計算するための JSL の適切な構文は何ですか?サブセット行数は? データテーブルでは、「Col Mean (:Data Column, :Grouping Column)」という式をそのまま使用できますが、JSL スクリプトでは、これは正しい使用法ではないようです。
注意すべきことに、「各行」構造を使用して総当たりを使用することを考えていますが、1000行で200以上の列を評価する場合、それは非常に非効率的であるようです。
ご協力ありがとうございました。
TS
Re: JSL スクリプトで行のサブセットの Col Mean () を計算していますか?これを行う最も簡単で効率的な方法は、次のようにすることだと思います。
表==>概要
これにより、データ テーブルが非常に高速に作成され、そこから JSL の統計を取得できます。また、統計を元のデータ テーブルに戻す必要がある場合は、単純な照合を伴う更新で実行できます。200 列と 1000 行を処理することはまったく問題ありません。以下は、これを行う方法を示す簡単な例です。
names default to here(1);
dt=Open("$SAMPLE_DATA/semiconductor capability.jmp");
colNamesLIst = dt << get column names(continuous);
dtStats = dt << Summary(invisible,
Group( :SITE ),
Mean( colNamesList ),
Freq( "None" ),
Weight( "None" ),
Link to original data table(0)
);
dt << Update(
With( dtStats ),
Match Columns( :SITE = :SITE )
);
close( dtStats, nosave );Re: JSL スクリプトで行のサブセットの Col Mean () を計算していますか?こんにちは、JMP コミュニティです。
「For Each Row」構造を使用して私が思いついたものは次のとおりです。
Names Default to Here (1);
dt = Current Data Table ();
ALL_MEAN = Col Mean (:DATA);
MAX_MEAN = -1000;
For Each Row (
if (MAX_MEAN < Col Mean(:DATA, :GROUP,:SGROUP), MAX_MEAN = Col Mean(:DATA, :GROUP,:SGROUP))
);
Show (ALL_MEAN);
Show (MAX_MEAN);
これをより効率的にするためのアイデアはありますか?
ありがとう、
TS