如何将Pandas时间序列索引转换为time对象列表?
将Pandas时间序列索引转换为time对象列表
直接利用Pandas DatetimeIndex的.time属性就能实现需求,不用绕弯路:
提取时间对象序列并转列表:
time_list = df.index.time.tolist()执行后得到的
time_list就是由datetime.time对象组成的列表,格式完全符合你想要的[time(hour=11, minute=14, second=15), ...]。补充说明:
你之前用df.index.values.tolist()得到纳秒时间戳,是因为.values返回的是numpy的datetime64类型数组,转列表时会被解析为对应的纳秒级整数时间戳;而.time属性是Pandas专门提供的,直接从时间索引中提取时间部分,返回原生Python的time对象。可选验证:
如果你想确认元素类型,可执行以下代码:from datetime import time print(isinstance(time_list[0], time)) # 输出True
内容的提问来源于stack exchange,提问作者bbartling
相关产品推荐
相关产品推荐

