JMPの新しいウィンドウから変数を取得する<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />column dialog()コマンドをNew Window()表示ツリーに変換しましたが、ダイアログウィンドウからデータの一部を取り出すことができません。 理想的には、ダイアログウィンドウで指定された列(Yおよびグループ化変数)と、ラジオボタンの設定、チェックボックスの状態、およびテキスト編集ボックスの値を取得します。これを単にいくつかの変数にプリロードして関数をロードすることを望んでいましたが、ButtonBox内の "Show(yList)"コマンドのように、表示ツリー内から変数を取得する方法さえ理解できません。、)は空のリストを表示します。
これがスクリプトの先頭で宣言されている関数です。
startAnaFn =関数({x}、
show(numParam);
show(yList);
表示(gList);
;
これが私のダイアログの短いバージョンです。
anaDialog =新しいウィンドウ( "分析するパラメータの選択"、
| | | | | | vlistbox( |
| | | | | | | colListY = ColListBox(width(lbWidth)、n行(6)、minitems(1))、 |
| | | | | | | checkObj =チェックボックス({"Y選択の逆行列を使う"}、<< Set(0,0))、 |
| | | | | | 、 |
numParam =テキスト編集ボックス( "20")、
| hlistbox( |
| | | |
| | テキストボックス(" ")、 |
| | ButtonBox( "わかりました"、 |
| | | :: yList = colListY <<選択される。 |
| | | show(yList); // < - 予想されるデータも表示されません |
| | | gList = colListG <<選択されたものになります。 |
| | | anaDialog <<ウィンドウを閉じる。 |
| | | startAnaFn(1))、 |
| | テキストボックス(" ")、 |
| | ButtonBox( "キャンセル"、anaDialog <<ウィンドウを閉じる)、 |
、
;
シモンズ:これがJMPフォーラムの場合、ペーストされたJSLコードが表形式であると想定するのはなぜですか?
再:JMPの新しいウィンドウから変数を取得するうーん、これは私の醜いハックです。 誰かがよりエレガントな解決策を提供できれば幸いです。 私はそれがJSLで何なのかわかりませんが、それは私を困惑させ続けています。
yParamList = {0};
//すべての列を選択
(i = 1、i <= ncol(dtData)、i ++、
列(i)<<選択されたセット(1)。
;
fullList = dtData << get selected columns();
yParamList = {0};
(i = 1、i <= n項目(全リスト)、i ++、
(k = 1、k <= n項目(yParamNames)、k ++、
if(char(fullList )== yParamNames、yParamList= fullList ;ブレーク());
;
;
show(yParamList);
再:JMPの新しいウィンドウから変数を取得する私はそれを考え出した。間違った種類の "get"ステートメントを使用していました。これがうまくいったものです:
| yParamNames = colListY << getアイテム。 |
| groupNames = colListG << getアイテム; |
| numParamVal = numParam << Get(数値); |
| invertY = checkObj << get; |
| radioRes = radioSel << get; |
| anaDialog <<ウィンドウを閉じる。 |
| startAnaFn(1))、 |
しかし、私はもう一つ質問があります。 yParamNamesはリストを文字列形式で返します:{"列1の名前"、:列2の名前 "など。
これを{:column 1 name、:column 2 nameなど}の形式に変換するにはどうすればいいですか?
ありがとう