類似行の削除ID と 2 つの値が前の行と同じである場合にテーブルから行を削除するスクリプトを作成しようとしています。各行に固有の「実行番号」列があるため、重複する行をすべて削除することはできません。コードが機能しない理由をご存知の方はいませんか?
// Delete Duplicate Rows (re-entries)
NRows = N Rows(dt);
For(i = 1, i <= NRows, i++,
If(
dt:ID[i] == dt:ID[i + 1] & Data Table("Sheet1"):value1[i] == dt:value1[i + 1] & dt
:value2[i] == dt:value2[i + 1],
{dt << Delete Rows(i), i--}
)
);
コンテンツの編成データのブレンドとクリーンアップ類似行の削除についてスクリプトの中括弧内のこの部分が間違っていると思います (if() 関数では通常、そこに中括弧は必要ありません)。
{ dt << 行を削除 (i), i --}
そうは言っても、重複を選択するための JMP の組み込み関数を使用して、目的を達成するための別の、おそらくより簡単な方法を次に示します。
dt << Select Duplicate Rows ({:ID, :Value 1, :Value 2});
dt << delete rows;