PolarsでListを扱う
fmapぽいやつ
リストを行に展開するやつ
castするときの例
code:py
pl.List(pl.Int64)
.listをつけ忘れないように注意
code:py
# 長さが1のものは除外 (null, 2個以上を残す)
.filter(pl.col("hoge").list.len() != 1)
# .filter(pl.col("hoge").len() != 1) これは違う
Expr.list.all()
Expr.list.arg_max()
Expr.list.arg_min()
別のリストを結合
リスト内で指定した要素が出現する回数をカウント
各リスト内の要素間の差分を計算する
nは差分を取る間隔を指定し、null_behaviorでnull値の扱いを設定できる
Expr.list.drop_nulls()
Expr.list.first()
指定したインデックスに基づいて、各リストから要素を取得します。インデックスは式として指定し、条件に応じて動的に要素を選択できます。GPT-4.icon
各リストから指定した間隔(interval)ごとに要素を収集します。例えば、各リストの2つおきの要素を取得する場合に使用します。GPT-4.icon
Expr.list.get(index, *null_on_oob)
Expr.list.head()
Expr.list.join()
Expr.list.last()
Expr.list.len()
Expr.list.max()
Expr.list.mean()
Expr.list.median()
Expr.list.min()
各リスト内のユニークな要素の数をカウントします。結果は整数値の列として返されます。GPT-4.icon
Expr.list.reverse()
各リストと別のリスト(other)との間の差集合を計算します。つまり、各リストからotherに含まれない要素を取得します。GPT-4.icon
各リストと別のリスト(other)との間の共通要素(積集合)を取得します。結果はリストの列として返されます。GPT-4.icon
各リストと別のリスト(other)との間の対称差(両方のリストに存在しない要素)を取得します。結果はリストの列として返されます。GPT-4.icon
各リストと別のリスト(other)との間の和集合を取得します。つまり、両方のリストに含まれる全てのユニークな要素を結合します。GPT-4.icon
各リスト内の要素を指定した期間(periods)だけシフトします。シフトによって生じた空白にはfill_valueを挿入します。GPT-4.icon
Expr.list.slice()
Expr.list.sort()
各リスト内の要素の標準偏差を計算します。結果は浮動小数点数の列として返されます。GPT-4.icon
Expr.list.sum()
Expr.list.tail()
Expr.list.to_array()
Expr.list.to_struct()
Expr.list.unique()
各リスト内の要素の分散を計算します。結果は浮動小数点数の列として返されます。GPT-4.icon
listのまま色々操作できる
code:py
out = weather.with_columns(pl.col("temperatures").str.split(" ")).with_columns(
pl.col("temperatures").list.head(3).alias("top3"),
pl.col("temperatures").list.slice(-3, 3).alias("bottom_3"),
pl.col("temperatures").list.len().alias("obs"),
)