トップ / ソート
行を指定した列の値で並べ替えます。
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)