トップ / 式評価・文字列・型変換

iff

条件が真か偽かで2つの値のどちらかを返す(2分岐専用のショートカット)。

SNOWPARK 静的検証のみ

iff(col("score") >= 80, lit("PASS"), lit("FAIL"))

POLARS 実行確認済み

pl.when(pl.col("score") >= 80).then(pl.lit("PASS")).otherwise(pl.lit("FAIL"))

挙動・設計の違い

SnowparkはSnowflake固有のIFF(cond, v1, v2)関数に直結する専用の呼び出しを持つ。Polarsには2分岐専用の独立した関数は無く、when().then().otherwise()で同じことを表す。実行して確認したところ結果は同じ。

移行時の落とし穴

iffはSnowpark(というよりSnowflake SQL)だけにある省略記法で、Polarsに直訳できる同名の関数は存在しない。3分岐以上に増えたときは、Snowpark側もどのみちwhen().when().otherwise()の形に切り替える必要があるので、最初からwhen/otherwise(前項)に統一して書いておくと両API間の差が小さくなる。

式評価・文字列・型変換の他のメソッド

出典・検証情報

Polars 1.43.2 で実行確認 / Snowpark Python SDK 1.54.0 で静的検証(2026-08-24)