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

initcap

各単語の先頭だけを大文字にし、残りを小文字にする(タイトルケース化)。

SNOWPARK 静的検証のみ

initcap(col("name"))  # "JOHN SMITH" → "John Smith"

POLARS 実行確認済み

pl.col("name").str.to_titlecase()  # "JOHN SMITH" → "John Smith"

挙動・設計の違い

Snowflake公式ドキュメントは「各単語の先頭文字を大文字に、それ以降の文字は小文字にする」と明記しており、"OVER the River""Over The River"という例まで示している。実行して確認したところ、Polarsのstr.to_titlecase()"JOHN SMITH""John Smith"残りの文字を小文字化する点まで一致する(先頭だけ大文字化して残りをそのまま残す動作ではない)。

移行時の落とし穴

単語の区切り方の細かな仕様(ハイフンやアポストロフィを区切りとして扱うか等)はライブラリごとの実装依存で、両者が完全に一致する保証はない。姓名やハイフン入りの固有名詞など、区切りの扱いが結果に影響しうるデータでは、想定どおりの区切りになっているかを実データで確認すること。

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

出典・検証情報

Polars 1.36.1 で実行確認 / Snowpark Python SDK 1.51.1 で静的検証(2026-08-30)