<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />こんにちはフォークス、
ログワース順に並べられたデータテーブルのパーティション分析から分割候補を引き出すスクリプトを作成する方法があるかどうか疑問に思っています。 これは、パーティションモデルを適合させ、候補セクションを右クリックするときに手動で実行できます。
スコット
私はこれをかなりたくさんします。これが私が使用するコードの例です
(あなたの質問への答えは、「候補者テーブルの抽出」セクションの4行です!)
// サンプルデータ
dt =開ける(( "$ SAMPLE_DATA / Fitness.jmp" )。 ;
dtName = dt <<名前を取得;
//応答変数を選択します
colNames = dt <<列名を取得する((ストリング) ;
nw =新しい窓(( 「Yを選択」 、 <<モーダル、
ポンド=リストボックス(( colNames 、 MaxSelected( 1 )。 、 <<選択したセット(( 5 ))
)。 ;
もしも(nw [ "ボタン" ] ==- 1 、投げる()) ;
sel =ポンド<<選択される;
もしも(( Nitems (( sel) == 0 、
投げる()
、
yCol = sel [ 1 ]
)。 ;
//他のすべての列をx変数として使用します
pos = Loc (( colNames 、 yCol) ;
xCols =削除する(( colNames 、 pos [ 1 ]) ;
//名前列を削除します
から削除(( xCols 、 1 )。 ;
//パーティションプラットフォームを起動します
パット=パーティション(
Y(評価(( yCol)) 、
バツ(評価(( xCols)) 、
)。 ;
//候補テーブルを抽出します
担当者=パット<<報告;
candTab = rep [ 「候補者」 ][ TableBox (( 1 )] ;
candDt = candTab <<データテーブルにする;
担当者<<ウィンドウを閉じる;
//候補テーブルを並べ替えます
candDt <<選別((に( : LogWorth) 、 Order(降順) 、テーブルを交換してください) ;
//ケーキの上のアイシング-行の選択ができるようにスクリプトを追加します
//このテーブルでは、ソーステーブルに列選択が生成されます
評価((解析((評価インサート(( "\ [
candDt << New Script(
「列の選択」、
cdt =現在のデータテーブル();
rows =cdt<<選択した行を取得;
lstNames = Column(cdt、 "Term")[rows];
データテーブル( "^ dtName ^")<<列の選択をクリア;
(i = 1、i <= NItems(lstNames)、i ++の場合、
Column(データテーブル( "^ dtName ^")、lstNames )<< Set Selected(1)
)。
)。
] \ " )))) ;
最終結果は、次のようなテーブルになります。

特に便利だと思うので、この表に添付されているSelectColumnsスクリプトのコードを含めました。したがって、たとえば、この候補テーブルの最初の3行を選択した場合、スクリプトを実行すると、ソースデータテーブルの対応する列が選択されます。たくさんの列がある場合に便利です。
-デイブ