Python Pandas:如何转换特殊时间戳并去除索引前缀?
解决方法
优先推荐:用pandas原生时间类型处理
别用字符串分割这种绕路的方法,pandas本身有完善的时间处理工具,高效还不容易出错:
- 把时间列转成datetime类型:
df['timestamp'] = pd.to_datetime(df['timestamp'])
- 格式化到秒级:
df['formatted_timestamp'] = df['timestamp'].dt.strftime('%Y-%m-%d %H:%M:%S')
这样直接得到你要的2021-12-21 04:27:00格式,完全不会有索引前缀的问题。
如果你非要用字符串分割的方式解决索引问题
你说的索引前缀0是因为操作的是Series对象,取单个元素时会带索引标记。解决办法:
- 取单个值的话,用
.iloc[0]直接提取纯值:
# s是你的时间Series clean_value = s.str.split('.').str[0].iloc[0]
- 处理整列的话,
s.str.split('.').str[0]本身就是格式化后的Series,要是不需要索引,转成列表就行:
formatted_list = s.str.split('.').str[0].tolist()
内容的提问来源于stack exchange,提问作者Sophia
相关产品推荐
相关产品推荐

