モデルダイアログのスクリプティングスクリプト内でモデルダイアログを操作することは可能ですか?
特に一般化された回帰では、「アクティブな効果で再起動」というメッセージがモデルダイアログを開きますが、ダイアログの実行方法がわかりません。クラスター変数プラットフォームにも同様の問題があります。<< Launch Fit Modelというモデルダイアログを開くメッセージを送ることができますが、私は自分のスクリプトでダイアログを操作する方法を知りません。
ヘルプシステムからのスクリプト例
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Diabetes.jmp" );
fm = Fit Model(
Y( :Y ),
Effects(
:Age,
:Gender,
:BMI,
:BP,
:Total Cholesterol,
:LDL,
:HDL,
:TCH,
:LTG,
:Glucose
),
Personality( "Generalized Regression" ),
Generalized Distribution( "Normal" ),
Validation( :Validation ),
Run(
Fit(
Estimation Method( Lasso( Adaptive ) ),
Validation Method( Validation Column )
)
)
);
fm << (fit[1] << Relaunch with Active Effects);
モデルダイアログのスクリプティング「Active Effectsとの再起動は対話型ツールになることを目的としており、対話型アクションを模倣する場合はレポートから情報を取得し、JSLでFit Modelコードを再発行する必要があります。 例として下記を参照してください
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Diabetes.jmp" );
fm = Fit Model(
Y( :Y ),
Effects(
:Age,
:Gender,
:BMI,
:BP,
:Total Cholesterol,
:LDL,
:HDL,
:TCH,
:LTG,
:Glucose
),
Personality( "Generalized Regression" ),
Generalized Distribution( "Normal" ),
Validation( :Validation ),
Run(
Fit(
Estimation Method( Lasso( Adaptive ) ),
Validation Method( Validation Column )
)
)
);
// Parse out the Effect Tests table to get the remaing effects
RemainingEffects = report(fm)["Effect Tests"][StringColBox(1)]<<GET>=1,i--,
if(Notes[i]=="Removed",
RemainingEffects = remove(RemainingEffects,i,1);
)
);
// Run the new model
fm2 = Fit Model(
Y( :Y ),
Effects(
eval(RemainingEffects)
),
Personality( "Generalized Regression" ),
Generalized Distribution( "Normal" ),
Validation( :Validation ),
Run(
Fit(
Estimation Method( Lasso( Adaptive ) ),
Validation Method( Validation Column )
)
)
);</GET>
モデルダイアログのスクリプティング1つの選択肢を考え出しただけで構いません。次のように、実行ボタンにクリックメッセージを送信するだけです。
window("Report: Fit Model")[buttonbox(9)] << click;もっとエレガントな方法があるのでしょうか。
ありがとう
ガンター