You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pandas.to_parquet保存datetime64[ns]列后转时间戳,能否原样保存?

解决pandas保存Parquet时datetime64[ns]列转为时间戳的问题

完全可以将datetime64[ns]列原样保存为Parquet文件,出现转为Unix时间戳的情况,通常是Parquet引擎或参数设置导致的,调整后即可解决:

  • 指定正确的Parquet引擎
    pandas支持pyarrow和fastparquet两种引擎,pyarrow对datetime类型的兼容性更好。保存和读取时显式指定引擎:

    # 保存
    df.to_parquet('data.parquet', engine='pyarrow')
    # 读取
    df_read = pd.read_parquet('data.parquet', engine='pyarrow')
    
  • 确认列类型正确性
    保存前通过df.dtypes检查目标列是否为datetime64[ns]类型,若不是先转换:

    df['datetime_col'] = pd.to_datetime(df['datetime_col'])
    
  • 避免错误的类型指定
    读取时不要强制将datetime列指定为int类型,让引擎自动推断类型即可。

Parquet格式本身支持datetime类型存储,只要配合正确的引擎和参数,就能完整保留datetime64[ns]的原始格式。

内容的提问来源于stack exchange,提问作者nightshiftman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 10:15:28