自Epoch以来如何将熊猫时间戳转换为纳米?

时间:2016-08-11 14:12:29

标签: python-3.x datetime pandas epoch

从Epoch开始,将Pandas Timestamp转换为nano的最有效方法是什么?

import pandas as pd
ns = 1470924597871000000   
timestamp = pd.to_datetime(ns, unit="ns")

然后如何

timestamp => 1470924597871000000  ns???

3 个答案:

答案 0 :(得分:6)

对我来说,它适用于参数unit,但令人惊讶的是没有参数:

import pandas as pd
ns = 1470924597871000000  

timestamp1 = pd.to_datetime(ns)
print (timestamp1)
2016-08-11 14:09:57.871000

timestamp = pd.to_datetime(ns, unit='ns')
print (timestamp)
2016-08-11 14:09:57.871000

如果需要从Timestamp转换为epoch:

print (timestamp.value)
1470924597871000000

答案 1 :(得分:1)

传递unit='ns'以指定单位类型:

In [46]:
ns = 1470924597871000000   
timestamp = pd.to_datetime(ns, unit='ns')
timestamp

Out[46]:
Timestamp('2016-08-11 14:09:57.871000')

但是,除非你追求别的东西,否则这似乎没有通过这个似乎很好吗?

您可以使用timestamp()获取时间戳值:

In [50]:
timestamp.timestamp()

Out[50]:
1470920997.871

答案 2 :(得分:1)

您可以通过其值访问它:

import pandas as pd
ns = 1470924597871000000   
timestamp = pd.to_datetime(ns)
timestamp.value
Out: 1470924597871000000