最重要的是,我有一个日期时间数组,我想将其转换为时间戳,但我被卡住了。下面是我的时间数组。
Time
Out[31]:
array([datetime.datetime(2014, 2, 1, 0, 0, 0, 100000),
datetime.datetime(2014, 2, 1, 0, 0, 0, 300000),
datetime.datetime(2014, 2, 1, 0, 0, 0, 500000), ...,
datetime.datetime(2014, 2, 1, 19, 30, 0, 500000),
datetime.datetime(2014, 2, 1, 19, 30, 0, 700000),
datetime.datetime(2014, 2, 1, 19, 30, 0, 900000)], dtype=object)
我已经尝试了
x = time.mktime(Time.timetuple())
但是我收到了错误:
'numpy.ndarray' object has no attribute 'timetuple'
非常感谢任何帮助。
答案 0 :(得分:1)
您可以存储日期时间或时间戳,它们只是整数。这里的时间戳是根据日期时间计算的。
>>> from datetime import datetime
>>> dt = datetime(2014, 2, 1, 0, 0, 0, 100000)
>>> T = np.array([dt], dtype=np.datetime64)
>>> import time
>>> ts = int(time.mktime(dt.timetuple()))
>>> T = np.array([ts], dtype=np.int32)
答案 1 :(得分:0)
您无法使用 Time.timetuple(),因为时间是一个numpy数组。你可以迭代遍历数组,如下所示:
x = [time.mktime(t.timetuple()) for t in Time]