首页 > 解决方案 > 如何将所有时间戳值转换为数据框列 Python Pandas 中的数值

问题描述

我有一个具有 int、float、timestamp 数据类型的 pandas 数据框。我想将时间戳值转换为数值类似于 2018-08-20 18:57:07.797 到 20180820185707797 并将其存储为替换原始的数字时间戳列。我如何在 Python 中做到这一点

标签: pythonpandas

解决方案


时间戳在内部存储为 int64 作为 1970-01-01 的纳秒数(我认为)。您可以通过以下方式获取此号码:

df['time'] = pd.to_datetime(df['time']).astype(np.int64)

或者,如果您真的想要您所说的格式,请尝试:

df['time'] = pd.to_datetime(df['time']).dt.strftime('%Y%m%d%H%M%S%f').apply(lambda x: int(x[:-3]))

推荐阅读