スクリプトの問題:条件付き評価文に変数名が動的に渡されない<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />皆さんこんにちは、
私たちが定期的に行っているいくつかのDOE分析で私の時間を節約するスクリプトを作成することに私はいくらかの問題を抱えています。
スクリプトに実行させたいのは次のとおりです。
1)スクリプトで見つけることができるcc = {Variables}コマンドの元の変数ごとに新しい変数を作成します。これはうまくいきます。
2)作成した新しい変数ごとに、元の変数に含まれるデータがあるしきい値を超えているかどうかを評価する条件付きステートメントを添付します。
私は親密になりつつあるように感じます、問題は条件文の中でccコマンドの変数の実際の名前が正しく渡されていないということです。したがって、私のスクリプトはエラーになります。
あなたがとても礼儀正しいことができるならば、私はここで何が間違っているのかもっとよく理解したいです。参考のために、シミュレートしたデータと現在作業中のスクリプトを添付しました。
また、スクリプト内で複数の条件文を複数の変数に渡しても問題ないことを確認したいと思います。
この号から私が学ぶのを手助けすることにおいてどんな援助でも本当にありがとう。
スクリプト(データも添付)
cd = 現在のデータ表 () ;
//ユーザー指定の列名
cc = { C1 RLU 、 C2 RLU 、 C3 RLU } ;
にとって ( 私 = 1 、私 <= N個のアイテム ( cc ) 、私 ++、
新しいコラム ( チャー ( cc [ 私 ]) || "5e3" 、数値 、式 ( IF ( cc [ 私 ] > 5000 、 1 、 0 ))) ;
( 新しいコラム ( チャー ( cc [ 私 ]) || "1e4" 、数値 )) ; 10000 //最初の条件付き作業が行われた場合、2番目のものが10000でここに作成されます
( 新しいコラム ( チャー ( cc [ 私 ]) || "2e4" 、数値 ))) ; 20000 // 20000用の別の条件
スクリプトの問題:条件付き評価文に動的に渡されない変数名私はただあなたの助けを本当にありがとうございます。これで問題は解決しましたが、もっと重要なことに、私は後日この種の問題を通してどのように問題を解決するかを知っています。
非常に高く評価。
スクリプトの問題:条件付き評価文に動的に渡されない変数名マークベイリーの答えは良いものです。
それでも式を含む列が必要な場合は、JMPは式をスクリプト実行時ではなく列内で評価する必要があると想定していることに注意してください。その結果、 cc [1] 列参照の代わりに数式で。New Column()を評価する前に、列参照を代入する必要があります。
cd = Current Data Table();
// User specified column names
cc = {C1 RLU, C2 RLU, C3 RLU};
For( i = 1, i <= N Items( cc ), i++,
Eval(
Substitute(
Expr(
New Column( Char( cc[i] ) || "5e3", Numeric, formula( col > 5000 ) );
New Column( Char( cc[i] ) || "1e4", Numeric, formula( col > 10000 ) );
New Column( Char( cc[i] ) || "2e4", Numeric, formula( col > 20000 ) );
),
expr(col), cc[1]
)
);
);
- ジェフ
スクリプトの問題:条件付き評価文に動的に渡されない変数名このスクリプトを試してください。
cd = 現在のデータ表 () ;
//ユーザー指定の列名
cc = { C1 RLU 、 C2 RLU 、 C3 RLU } ;
にとって ( 私 = 1 、私 <= N個のアイテム ( cc ) 、私 ++、
cd << 新しいコラム ( チャー ( cc [ 私 ] ) || "5e3" 、
数値 、
値 (
地元 ( { データ } 、
データ = cc [ 私 ] << 行列として取得 ;
データ > 5000
)
)
) ;
cd << 新しいコラム ( チャー ( cc [ 私 ] ) || "1e4" 、
数値 、
値 (
地元 ( { データ } 、
データ = cc [ 私 ] << 行列として取得 ;
データ > 10000
)
)
) ;
cd << 新しいコラム ( チャー ( cc [ 私 ] ) || "2e4" 、
数値 、
値 (
地元 ( { データ } 、
データ = cc [ 私 ] << 行列として取得 ;
データ > 20000
)
)
) ;
) ;