Closed2

Polars(Rust)の日付操作

Nifumafu🍊Nifumafu🍊

やりたいこと

日時 -> 日付・時間に分けて出力 ※これはできる

最適解を探しているもの
時間 -> 日時を生成(日付は当日を当てはめる)
日付 -> 日時を生成(時間は00:00:00を当てはめる)
上記2パターンをパフォーマンスも気にしながら、生成したい。

Nifumafu🍊Nifumafu🍊

思ってるよりも簡単だった。

日付 -> 日時を生成(時間は00:00:00を当てはめる)

実際のコードが以下。

import polars as pl

date_df = pl.DataFrame({"date": ["2020/12/24", "2020/12/25", "2020/12/26"]})
datetime_df = date_df.select(
    pl.col("date")
    .str.to_datetime(format="%Y/%m/%d", strict=False),
)
print(date_df)
print(datetime_df)

出力結果

shape: (3, 1)
┌────────────┐
│ date       │
│ ---        │
│ str        │
╞════════════╡
│ 2020/12/24 │
│ 2020/12/25 │
│ 2020/12/26 │
└────────────┘
shape: (3, 1)
┌─────────────────────┐
│ date                │
│ ---                 │
│ datetime[μs]        │
╞═════════════════════╡
│ 2020-12-24 00:00:00 │
│ 2020-12-25 00:00:00 │
│ 2020-12-26 00:00:00 │
└─────────────────────┘

00:00:00を補填してくれるあたり優しい。

時間 -> 日時を生成

デフォルトで0001年01月01日を補填してくれる。

このスクラップは4ヶ月前にクローズされました