我有一些时间数据作为字符串读入numpy数组。格式为
x = ['11:13:01.337 AM', '11:13:03.337 AM', '11:13:05.337 AM']
我希望能够在不确定的时间内清晰地绘制此图,比如说数据持续了4个小时。如何将其转换为合理的图形以进行绘制?我不确定哪种形式最好,所以建议会有所帮助。您可能会说我是菜鸟,我的老板和我感谢您的帮助!
答案 0 :(得分:0)
与time.strptime
不同,datetime.strptime
可以解析此类字符串,包括微秒,您可以将结果转换为数字(自午夜以来的秒数):
import datetime
def parse(s):
d = datetime.datetime.strptime(s, "%I:%M:%S.%f %p")
return 3600 * d.hour + 60 * d.minute + d.second + d.microsecond * 1e-6
并像这样使用它:
x = ['11:13:01.337 AM', '11:13:03.337 AM', '11:13:05.337 AM']
print([parse(s) for s in x])
即使在DST更改的情况下,这也应该是安全的,因为strptime仅解析时间,并且不尝试任何此类语义转换