トップ / 式評価・文字列・型変換
文字列を指定した精度の数値に変換する/数値を文字列に変換する(書式指定つき)。
to_decimal(col("price_str"), 10, 2)
to_varchar(col("price"), '$999,999.00')
pl.col("price_str").cast(pl.Decimal(10, 2))
pl.col("price").cast(pl.Utf8) # 書式指定は無い
to_decimalと.cast(pl.Decimal(precision, scale))は近い。実行して確認したところ、精度を超える値を渡すとどちらもエラーになる点まで一致する(Snowflake公式ドキュメントの「精度を超えるとエラー」と、PolarsのInvalidOperationErrorを個別に確認)。
to_varcharの書式文字列機能に対応するAPIがPolarsに無い。Snowflakeのto_varchar(col, '$999,999.00')はカンマ区切りや通貨記号つきの文字列を1回の呼び出しで生成できるが、Polarsの.cast(pl.Utf8)は単純に数値を文字列化するだけで書式の概念が無い。同じ見た目の文字列が必要な場合、Python標準のf"{x:,.2f}"のような書式指定を行ごとに適用する(map_elements等)処理を別途組む必要があり、Snowpark側の1関数呼び出しでは済まない。
Polars 1.36.1 で実行確認 / Snowpark Python SDK 1.51.1 で静的検証(2026-08-30)