JSLスクリプティング:SendToByGroupコマンドを自動化できますか?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />ほとんどのJMPプラットフォームには、変数の各レベルに対して個別に分析を実行する「By」オプションがあります。私はDistributionとFit Model(GLM)プラットフォームに特に興味があります。
スクリプトインデックス(ヘルプメニューからアクセス可能)にこの例があります。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Distribution(
By( :Sex ),
SendToByGroup(
{:sex == "F"},
Continuous Distribution(
Column( :weight ),
Normal Quantile Plot( 1 )
)
),
SendToByGroup(
{:sex == "M"},
Continuous Distribution(
Column( :weight )
)
)
);
上記の例、およびFit Modelプラットフォームを介して生成できるスクリプトでは、変数のレベルが明示的に指定されています。
スクリプトは、データセット内のレベルがなんであれ、実行を自動化できますか?例えば レベルを手動で指定したくないのは、それぞれ異なるレベルを持つ異なるデータセットに対して同じ分析を繰り返す必要があるからです。都市別の分析を考えてみましょう。1つのデータセットにNYとLAがあり、もう1つのデータセットにはロンドンとパリがあります。
ありがとうございました!
再:JSLスクリプト:SendToByGroupコマンドを自動化できますか?ありがとうございます。分析を手動で実行してからスクリプトをコピーすると、結果のスクリプトでレベルが明示的に指定されるため、混乱していましたが、実際にはこれは必須ではありません。
再:JSLスクリプト:SendToByGroupコマンドを自動化できますか?NamesDefaultToHere ( 1 ) ;
//レベル数が2から5までの 'By'変数でテーブルを作成します
番号 = 100 ;
NC = 3 ;
dt = NewTable ( 「いくつかのデータ」 ) ;
にとって ( c = 1 、 c <= NC 、 c ++、
dt << NewColumn ( 「コル」 || チャー ( c ) 、数値 、連続的 、式 ( ランダム正規 ())) ;
) ;
dt << AddRows ( 番号 ) ;
コルズ = dt << GetColumnNames ( 「文字列」 ) ;
dt << NewColumn ( "によって" 、数値 、連続的 、式 ( RandomInteger ( 1 、 RandomInteger ( 2 、 5 ))) ;
//配布します
dt << 分布 ( 列 ( 評価 ( コルズ )) 、によって ( : によって )) ;