将时间戳以秒为单位转换为以毫秒为单位



我正在添加到数据帧的响应中获得此时间戳。1613065177.952422

当我使用unit='s'时,时间是正确的,如果我使用unit='ms',时间就全乱了,通常日期是1970年,时间是错误的。所以我假设这意味着这个时间戳是以秒为单位的,我需要将其转换为毫秒。

我看到s到ms的转换是除以我的1000,但当我尝试使用时间戳* 1000时,我得到了一个值错误:不可转换的值,然后是一个非常非常长的数字(太大而不能在这里发布)

这是我使用unit='s'使用pandas转换时间戳的代码,我试图使时间变量转换为ms,但效果不太好。

time= df.timestamp * 1000
fdf.insert(1, 'time', pd.to_datetime(time, unit='s'))  

您可以尝试使用datetime模块:

from datetime import datetime
date = datetime.now()
>>> date
datetime.datetime(2022, 6, 17, 16, 16, 34, 879683)
>>> date.second
34
>>> date.microsecond
879683

当你创建一个datetime对象时,它也会给你一个微秒属性。如果你想要毫秒数,只需要使用前三位数字。所以在这个例子中你应该有34879毫秒。

如果您正在使用字符串数据,您可以根据以下说明创建datetime对象:https://stackabuse.com/converting-strings-to-datetime-in-python/

相关内容

  • 没有找到相关文章

最新更新