トップ / ソート
行を指定した列の値で並べ替える。
df.order_by(col("age").asc(), col("score").desc())
ldf.sort(by=["age", "score"], descending=[False, True])
SnowparkはSQLのORDER BY句に変換される。分散環境でのソートは全ノード間のデータシャッフルを伴うため、大規模データでは相応のコストがかかる。Polarsはローカルメモリ上でマルチスレッドのソートを実行する。
昇順・降順の指定方法が構文として異なる。Snowparkはcol("列名").asc()/.desc()のように列の式自体に方向を持たせるのに対し、Polarsはsort()のdescending引数に列の数と対応する真偽値のリストを渡す。列を並べ替えてもdescendingリストの対応する位置を一緒に動かし忘れると、意図と違う列が昇順/降順になる。
Polars 1.43.2 で実行確認 / Snowpark Python SDK 1.54.0 で静的検証(2026-08-23)