<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />私は多くの変数間の関係を見つけようとしていますが、スクリーニング プラットフォームは段階的回帰よりもはるかに短い時間で適切に機能することがわかりました。 現在、変数をロールに割り当て、変数上でスクリーニング プラットフォームを実行し、出力をデータ テーブルに変換し、そのデータ テーブルを保存するプロセスを自動化しようとしています。 段階的回帰の場合は基本的にこれをすでに実行しましたが、スクリーニング プラットフォームがそのように機能しないように見えることがわかりました。 まず、「OK」ボタンを押すためにランチャーのツリー図を取得する方法がないようです。 次に、メッセージを送信して、操作できるレポートを生成する方法がわかりません。 これは可能でしょうか? 明確にするために、段階的回帰プラットフォームを自動化するために私が開発したスクリプトを以下に示します。 基本的にはスクリーニング用にステップワイズを交換したいと考えています。 それは実際には不可能だと思いますが、それを行う別の方法を見つけるのに本当に苦労しています(AutoHotKeyを使用して醜くて信頼性の低いソリューションをハックしようとするところまでです!)。 よろしくお願いいたします。
dt=Open("C:\testtable.jmp");
cc=dt <<列名を取得;
ncols = N アイテム(cc);
For(i=1, i<=ncols, i++, 現在のデータ テーブル(dt);
For(j=1, j<=ncols, j++,if( cc!=cc 、cc <<役割(X)を事前選択,cc <<ロールを事前選択(Y));
);
sw = モデルの適合(
性格(段階的)、
インターセプトなし、
Run( 停止ルール( "最小 AICc" )));
sw<
待ちます(1800);
repsw = sw<< レポート;
reptb = repsw[TableBox(2)]<< データテーブルを作成;
reptb << Sort( By( :Name( "\!"F Ratio\!"" ) )、順序 (降順) 、テーブルを置換);
reptb << 名前を付けて保存("C:\"||cc ||".csv"、テキスト);
reptb << ウィンドウを閉じる;
repsw << ウィンドウを閉じる;
);
デイブ、
JSL を使用して、列ダイアログ ウィンドウから X と Y を選択するための入力をユーザーに求める方法を教えていただけますか?
ありがとう、クン。
こんにちは、ご返信ありがとうございます。返信が遅れてしまい申し訳ありません。 私はあなたの助けに感謝します。
Open("$SAMPLE_DATA/Big Class.jmp");
// この例では、列がリストに割り当てられます
// 役割を特定します。リストは構築できます
// テーブルの構成またはユーザー入力に基づいて
// 列ダイアログ ウィンドウから
yRole = {:高さ};
xRole = {:体重、:年齢、:性別};
// スクリーニングコマンドの文字列表現を構築します
// そして列の役割を置き換えます
cmd = Eval Insert( "\[
s = スクリーニング( Y(^yRole^), X(^xRole^) )
]\");
//コマンドを実行する
Eval(解析(cmd));
// スクリーニングウィンドウを参照する
sr = s << レポート;
// テーブルの結果を抽出します
// (表示ボックスを識別するには sr << ツリー構造を表示します)
t = sr[テーブルボックス(1)];
// 表示ボックスをテーブルに変換するメッセージを送信します
dt = t << データテーブルに作成;
// スクリーニングレポートウィンドウを閉じる
■ << ウィンドウを閉じる。