![見出し画像](https://assets.st-note.com/production/uploads/images/167520031/rectangle_large_type_2_f6f848e8293b8a1b9a264edd76f45ce3.jpeg?width=1200)
Polars null sortの挙動について
Polarsの挙動調査
nullがあった際にsortした際の挙動
# 1. データフレームの作成
import polars as pl
df = pl.DataFrame({
"a": [1, 2, 3, None, 5],
"b": [1, 2, 3, 4, 5]
})
# 2. sort 昇順
df.sort("a", descending=False)
![](https://assets.st-note.com/img/1735353549-LbnPFK41ktDhBxYM9QJs8aSd.png)
# 降順
df.sort("a", descending=True)
![](https://assets.st-note.com/img/1735353558-G0ImvLrOMHSqoTYVXQjzle9K.png)
nullがあると必ず一番上に来てしまうので注意が必要
ちなみにpandasは
# pandasでも確認する
import pandas as pd
df = pd.DataFrame({
"a": [1, 2, 3, None, 5],
"b": [1, 2, 3, 4, 5]
})
df.sort_values("a", ascending=False)
![](https://assets.st-note.com/img/1735353678-PAC8340aBGYErzutlSZe9wvL.png)
df.sort_values("a", ascending=True)
![](https://assets.st-note.com/img/1735353696-YTPGqXoD0NUz8weKktM6xL9d.png)
pandasに慣れていると思わぬところで落とし穴に引っかかるかも
まぁsortする前にnullのデータの確認しろよっていう話でもあるけど。
書き捨てのやつでやっていると人間甘えが出ちゃって怠惰になるものなので・・・