行選択から仕様制限列プロパティを設定しますコミュニティさん、こんにちは。
この表の例

5人の名前の列を生成するテーブルがあります。 すべての人には、HighL 列と LowL 列という特定のスペック制限があります。 それらの中には、HighL と LowL、または両方のスペック制限がないものもあります。 でも、上限と下限がある人にはスペック制限を設けたいと思っています。 合計 100 人がランダムにスペック制限を持っていると想像してください。
誰かが行番号 3 と 4 の仕様制限 (すべての列名に HighL と LowL) を自動的に設定できるスクリプトの作成を手伝ってくれませんか。 スペック制限の上限と下限だけを置くだけで、ターゲットは必要ありません。
お願いします.... この方法は多すぎて手動で行うことはできません。
自動化とスクリプト作成Re: 行選択からスペック制限列のプロパティを設定するHighL の名前を USL に、LowL の名前を LSL に変更した場合は、「スペック制限の管理」ですでに変更できる可能性があります。


制限テーブルからのロード

同表参照


それらを表示したい場合は、赤い三角ボタンからすべてに表示制限を追加します

最後に「列のプロパティに保存」を押します

(私のコラム 2 には USL よりも高い LSL があるため、仕様制限は追加されませんでした)
Re: 行選択からスペック制限列のプロパティを設定する先生、私のテーブルには、USL/LSL、またはその両方に仕様制限を設ける必要がない人たちの名前が何人かいます。 下の私の写真を参照してください。

LSL (-9.9999e+100) USL(9.9999e+100) を除く数値に仕様制限のみを設定できる単一のキーまたはスクリプトでこれらの数値をすべて無効化または削除する方法をご存知ですか?
また、これらすべての HighL と LowL の名前を USL と LSL に変更し、無限仕様を除くすべての仕様制限をすべての名前に自動的に含めることができるスクリプトを書いていただけますか。
この助けに感謝します、
Re: 行選択からスペック制限列のプロパティを設定するこれらの値を欠損値に変更できない場合は、おそらく次のようにします。
- HighL 行と LowL 行およびすべての列を含むサブセットを作成する
- recode を使用して HighL と LowL を USL と LSL に変更します
- recode を使用して 9.99e100 の値を欠損値に変更します (または他の方法でも問題ありません)。
- 作成したサブセットを制限テーブルとして使用します
- 制限を設定した後、サブセットを閉じます
JMP はおそらく、拡張ログ / ワークフロー ビルダーを使用して、これのほとんどをスクリプト化できます。 テーブルから制限を取得して、[制限の管理] から列のプロパティとして設定するプロセスをスクリプト化できない場合がありますが、Scripting Index にはその例があります。 以下は制限テーブルからのロードの例です。

Re: 行選択からスペック制限列のプロパティを設定するどうも、
USL と LSL の名前を変更するスクリプト再コードはすでに作成しました。 しかし、値を変更する方法がまだわかりません9.99e100 が列選択ではなく行選択で欠落しています。 何度も試しましたがやはり失敗します。 また、すべての列プロパティにすべての仕様制限を設定するスクリプトの作成にもこだわりました。 私を助けてください。
// Set Auto Spec Limit
Names Default To Here( 1 );
dt = Current Data Table();
// Recode column: Spec Limit
Local( {dt},
dt = Current Data Table();
dt << Begin Data Update;
dt << Recode Column(
dt:Spec Limit,
{Map Value( _rcOrig, {"HighL", "USL", "LowL", "LSL"}, Unmatched( _rcNow ) )},
Update Properties( 1 ),
Target Column( :Spec Limit )
);
dt << End Data Update;
);
// Recode row: USL
Local( {dt},
dt = Current Data Table();
dt << Clear Select << Select Rows( [2] );
selRows = dt << Get Selected Rows;
dt << Begin Data Update;
dt << Recode Selected Rows(
dt:USL,
{Map Value( _rcOrig, {"9.9999e+100", "."}, Unmatched( _rcNow ) )},
Update Properties( 1 ),
Target Row (:USL)
);
dt << End Data Update;
);
// Recode row: LSL
Local( {dt},
dt = Current Data Table();
dt << Clear Select << Select Rows( [3] );
selRows = dt << Get Selected Rows;
dt << Begin Data Update;
dt << Recode Selected Rows(
dt:USL,
{Map Value( _rcOrig, {"-9.9999e+100", "."}, Unmatched( _rcNow ) )},
Update Properties( 1 ),
Target Row (:LSL)
);
dt << End Data Update;
);以下に、このスクリプトを使用したサンプル データ テーブルを添付します。
Re: 行選択からスペック制限列のプロパティを設定するRecode は行ではなく列に対して機能します。スクリプト インデックスには、「選択された行を再コードする」という名前のそのようなメッセージはありません。 やろうとしているように見えることを実行するには、次のことが必要です
- 問題の行を選択します
- 選択した行を新しいデータテーブルにサブセット化します
- 再コード化するサブセット化されたデータテーブル内の各列に対して再コード化 JSL を実行します。
- 更新プラットフォームを使用して、サブセット化されたテーブルから元のデータ テーブルにデータを戻します。
Re: 行選択からスペック制限列のプロパティを設定するこんにちは、ジム、ご協力ありがとうございます。 特定の列に特定の名前を再コード化することができました。 しかし、テーブルの列全体を再コード化できるスクリプトを作成するにはどうすればよいでしょうか? 本当にどうやって書いたらいいのか分かりません。 一人一人の名前を書くということでしょうか? すべてのテーブルに同じ名前の列があるわけではないためです。 私を導いてください。
// Recode column: Paul
Local( {dt},
dt = Current Data Table();
dt << Begin Data Update;
dt << Recode Column(
dt:Paul,
{Map Value(
_rcOrig,
{-9.9999e+100, ., 9.9999e+100, .},
Unmatched( _rcNow )
)},
Update Properties( 1 ),
Target Column( :Paul )
);
dt << End Data Update;
);
// Clear row selection
dt << Clear Select;Re: 行選択からスペック制限列のプロパティを設定する非常に単純なオプションの 1 つは、LSL 行と USL 行を含むサブセットがある場合です。

これを転置します(私の記憶が正しければ、再コーディングするよりも、スクリプトを使用してここに列を入力する方がはるかに簡単です)

ラベル列の名前を変数に変更し、LSL 列と USL 列を再コード化します。

この表をスペック表として使用してください
