2つの割合が比較を行います。1つの列<別の列の場合、ステータスが「はい」、それ以外の場合は「いいえ」で新しい列名を作成します
これは私が必要とする機能であり、テスト時には以下のスクリプトが機能しますが、列名を変更すると動作しません、写真をチェックしてください:私の列 「目標進捗状況」と「実際の進捗状況」は割合ですこれは、大きなクラスでは異なります。スクリプトを修正する方法は?
実行可能なスクリプト:
dt = Open( "$ SAMPLE_DATA / Big Class.jmp");
dt << New Column( "status"、"Character"、"Nominal");
:status <<値を設定(
{"yes"、"no"} [(:height <<マトリックスとして取得)<=(:weight <<マトリックスとして取得)]
);
失敗したスクリプト:「ターゲットの進行状況」と「実際の進行状況」は割合です。
dt << New Column( "status"、"Character"、"Nominal");
:status << Set Values(
{"yes"、"no"} [(:実際の進行状況<<マトリックスとして取得)> =(:ターゲット進行状況<<マトリックスとして取得)]
);
Re:2つのパーセンテージで比較を行います。1つの列<別の列の場合は、ステータスが「はい」の新しい列名を作成します。それ以外の場合は「いいえ」私の推測は、あなたが与えている行列がゼロを与えているからです。
JMPインデックスは0ではなく1から始まります。
これを試して。
:status << Set Values({"yes", "no"}[((:Actual Progress << Get As Matrix) >= :Target Progress << Get As Matrix))+1]);
yesとnoの正しい値を取得していることを確認する必要があります。yesとnoを入れ替えることもできます。
しかし、実際には、それらを明示的に設定し、値ラベルを使用するだけです。
dt << new Column("Status", <<SET each="" value=""></SET>
Re:2つのパーセンテージで比較を行います。1つの列<別の列の場合は、ステータスが「はい」の新しい列名を作成します。それ以外の場合は「いいえ」最終的にこれは機能します。どうもありがとうございます。
dt = Current Data Table();
dt << New Column( "Actual Progress.",
"Numeric",
formula( If( :Target Complete >= :Actual Progress, "Yes", "No" ) )
);