如何在 C++ 中保存镶木地板文件中的时间戳并将其加载到 Python Pandas 中?
How to save timestamps in parquet files in C++ and load it in Python Pandas?
我在 C++ 中使用 Apache Arrow
将时间序列集合保存为拼花文件,并使用 python 将拼花文件加载为 Pandas
Dataframe
.该过程适用于除 Date64Type
之外的所有类型。我在 C++ 中保存纪元时间,当在 pandas 中加载它时,时间信息丢失了。
例如,对于 boost posix 时间:2018-04-01T20:11:17.112Z
,纪元时间(在 int64_t
中)是 1522613477112000
,但是当我保存到 parquet 文件时(Date64Type
) 并加载 pandas 结果是 2018-04-01
并且时间信息丢失了。在 parquet 文件中保存时间戳的正确方法是什么?
您需要改用 arrow::TimestampType
。 Date32Type
和Date64Type
只支持日解析;它们的内部表示有点不同(自 UNIX 纪元以来 int32_t
天与自 UNIX 纪元以来 int64_t
毫秒)
我在 C++ 中使用 Apache Arrow
将时间序列集合保存为拼花文件,并使用 python 将拼花文件加载为 Pandas
Dataframe
.该过程适用于除 Date64Type
之外的所有类型。我在 C++ 中保存纪元时间,当在 pandas 中加载它时,时间信息丢失了。
例如,对于 boost posix 时间:2018-04-01T20:11:17.112Z
,纪元时间(在 int64_t
中)是 1522613477112000
,但是当我保存到 parquet 文件时(Date64Type
) 并加载 pandas 结果是 2018-04-01
并且时间信息丢失了。在 parquet 文件中保存时间戳的正确方法是什么?
您需要改用 arrow::TimestampType
。 Date32Type
和Date64Type
只支持日解析;它们的内部表示有点不同(自 UNIX 纪元以来 int32_t
天与自 UNIX 纪元以来 int64_t
毫秒)