変換された変数をcolリストボックスに追加するみなさん、こんにちは、
"Append"関数を使用するときに、変換された変数をcolリストボックスに追加できません。
これが一例です。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "Col List Box Example 3",
H List Box(
ll1 = Col List Box( all ),
Button Box( "Add", ll2 << append( ll1 << get selected ) ),
ll2 = Col List Box( "numeric", MaxItems( 1 ), nlines( 1 ) ),
Button Box( "Remove", ll2 << remove selected )
)
);
それから例えば私は変数 "height"> "Transform"> "Log"を右クリックします。
新しい変数 "Log [height]"を選択して "Add"ボタンをクリックしても何も起こりません...
私がそれを変えることができる方法について何か考えがありますか?
ご協力ありがとうございます。
再:colリストボックスに変換された変数を追加する<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />W. Murphreyとmsharpのご回答ありがとうございます。
今のところ、変数がテーブル内にあることを確認し、そうでなければ、ユーザーに追加しなければならないと言って、私の問題を処理するのに良い方法のようです。
これを試してみるつもりです!
再度、感謝します。
再:colリストボックスに変換された変数を追加するCol List Box()のドラッグアンドドロップ機能をサポート。 そのため、「追加」ボタンを「ドラッグ&ドロップしてください」というテキストボックスに置き換えることができます。
ただし、もっと大きな問題は、Col List Box()を右クリックしても変換機能が使用できることです。 主にB / C私はあなたがこれをしたときに何をしているのかわからない。 1つ確かなことは、データテーブルに新しい変換列を作成していないことです。 データテーブルは変わりません。 これで、ユーザーはhocus pocus列を作成してから分析フィールドにドラッグアンドドロップできるようになりました。 これらの架空の列を作成して処理する機能を追加しない限り、これによりアプリケーションがクラッシュします。
ユーザーが偽の列で実行ボタンを押したときにクラッシュしないようにするには、選択した列が存在するかどうかを確認するチェックを実行する必要があります(W. Murphreyのコードと同様)。 列が存在しない場合は、作成する必要があります。 エンドユーザーは潜在的に右クリックして変換を実行する可能性があるため、コードはこれを処理するのに十分堅牢でなければなりません。 これを実装すると、分析前に列を右クリックして列を作成できることがエンドユーザーにわかります。これらの列には追加の機能も表示されるため、集計、分布、行、および数式の機能を追加する必要があります。 残念ながら、作成した列の数式をどのように変更したいのかを知る方法がないため、これがワームホールであることが最もよくわかります。
これを無視して、SASがそれを実装できるようになるまで待つことをお勧めします。W.Murphrey氏は、今後のバージョンではそうなると述べています。 分析の前にエンドユーザーが列を変換できることが絶対に必要な場合は、データテーブルにアクセスできるようにしてください。
再:colリストボックスに変換された変数を追加するこんにちは、
残念ながら、現時点ではColListBox内の変換された列に対するJSLサポートはありません。 この提案は、将来のリリースで検討するためにJMP開発チームに提出されました。
それまでの間は、列が存在することを確認するためのチェックを追加できます。 そうでない場合は、変換された変数をデータテーブルに追加する必要があることをユーザに指示するメッセージを表示します。 これを行うには、変換された列を右クリックして[データテーブルに追加]を選択します。
New Window( "Col List Box Example 3",
H List Box(
ll1 = Col List Box( all ),
Button Box( "Add",
colList = dt << Get Column Names( String );
If( Contains( colList, (ll1 << Get Selected)[1] ),
ll2 << append( ll1 << get selected ),
Caption( "Transformed variables must be added to the data table" )
);
),
ll2 = Col List Box( "numeric", MaxItems( 1 ), nlines( 1 ) ),
Button Box( "Remove", ll2 << remove selected )
)
);
これが役に立つことを願っています。
ウェンディ