Python Polars 从 Epoch 解析日期
Python Polars Parse Date from Epoch
如何将一列 i64 纪元字符串转换为极坐标中的日期?
我有一列 i64 表示自纪元以来的秒数,我想将它们解析为极地原生日期时间。
Polars' Datetime
以纳秒、微秒或毫秒为单位表示为 unix 纪元。因此,有了这些知识,我们可以将秒转换为毫秒并转换为 Datetime
.
最后我们确保 polars 使用正确的单位。
df = pl.DataFrame({
"epoch_seconds": [1648457740, 1648457740 + 10]
})
MILLISECONDS_IN_SECOND = 1000;
df.select(
(pl.col("epoch_seconds") * MILLISECONDS_IN_SECOND).cast(pl.Datetime).dt.with_time_unit("ms").alias("datetime")
)
shape: (2, 1)
┌─────────────────────┐
│ datetime │
│ --- │
│ datetime[ms] │
╞═════════════════════╡
│ 2022-03-28 08:55:40 │
├╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 2022-03-28 08:55:50 │
└─────────────────────┘
如何将一列 i64 纪元字符串转换为极坐标中的日期?
我有一列 i64 表示自纪元以来的秒数,我想将它们解析为极地原生日期时间。
Polars' Datetime
以纳秒、微秒或毫秒为单位表示为 unix 纪元。因此,有了这些知识,我们可以将秒转换为毫秒并转换为 Datetime
.
最后我们确保 polars 使用正确的单位。
df = pl.DataFrame({
"epoch_seconds": [1648457740, 1648457740 + 10]
})
MILLISECONDS_IN_SECOND = 1000;
df.select(
(pl.col("epoch_seconds") * MILLISECONDS_IN_SECOND).cast(pl.Datetime).dt.with_time_unit("ms").alias("datetime")
)
shape: (2, 1)
┌─────────────────────┐
│ datetime │
│ --- │
│ datetime[ms] │
╞═════════════════════╡
│ 2022-03-28 08:55:40 │
├╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 2022-03-28 08:55:50 │
└─────────────────────┘