IF マクロ
IF マクロは IBM ® Campaign および IBM ® Interact で使用可能です。
構文
IF(predicate_col, then_value) IF(predicate_col, then_value, else_value)
パラメーター
predicate_col
ブール値の単一列、またはブール値の単一列として評価される式です。ブール値はゼロまたは非ゼロとして解釈されます。 この列には、少なくともデータが抽出されるデータ範囲と同じ数の行が含まれている必要があります。
then_value
predicate_col の対応する行にゼロでない値が含まれている場合に戻される値 (複数可)。これは定数値、列、または以上のいずれかに評価される式になります。then_value のフォーマット定義 (data と同じ) については、IBM Campaign のマクロ関数のパラメーターを参照してください。
else_value
このオプション・パラメーターを指定する場合、predicate_col の対応する行に 0 が含まれていると、それが戻されます。これは定数値、列、または以上のいずれかに評価される式になります。else_value を指定しない場合、predicate_col が偽と評価されると必ず 0 が戻されます。else_value のフォーマット定義 (data と同じ) については、IBM Campaign のマクロ関数のパラメーターを参照してください。
説明
IFpredicate_col 内の式を評価して、式が真の場合は then_value を戻し、式が偽の場合は else_value を戻します。then_value および else_value と同数の列が戻されます。predicate_col の値がゼロでない場合、新規の列には対応する then_value 行の値が含まれます。else_value を指定する場合、predicate_col の値が 0 だと、それが戻されます。else_value を指定しないと 0 が戻されます。
IF は行ごとに処理するため、最も短い列 (すなわち、predicate_colthen_value、および else_value の列すべての中で、最も短い列) の最後の値まで各行の結果を生成します。
*
一般に、比較マクロ関数のいずれか (例えば、==><ISEVENISODD など) を使用して述部列を作成します。
TEMP という名前で V1 列のコピーを含む新しい列を作成します。
TEMP という名前で、V1 列の対応する値が 0 でない場合は各値が 1、それ以外の場合は 0 である新しい列を作成します。
TEMP という名前で、V3 列の対応する値が 0 でない場合は各値が V1 列からコピーされ、それ以外の場合は V2 列からコピーされる新しい列を作成します。
TEMP という名前で、平均からの偏差が 1 標準偏差未満である V1 列の各値を含む新しい列を作成します。
TEMP という名前で 10 から 20 行の値を含む新しい列を作成します。V3 列 (セル 30 からセル 40 まで) の対応する値が 0 でない場合は各値が V1 列 (セル 10 からセル 20 まで) からコピーされ、それ以外の場合は V2 列 (セル 1 からセル 11 まで) からコピーされます。