如何将DataFrame的ABZEIT列转换为指定时间格式?
转换DataFrame中"ABZEIT"列为指定时间格式
处理思路
原"ABZEIT"列内容为四位数字(如1305)或不足四位的数字(如740),需将其转换为HH:MM的时间格式,对应结果为13:05、07:40这类形式。
代码实现
提供两种可行的实现方式:
方法1:借助pandas时间格式转换
import pandas as pd # 将列转为字符串,不足四位的补前导零 df['ABZEIT'] = df['ABZEIT'].astype(str).str.zfill(4) # 转换为时间格式后提取时分部分 df['ABZEIT'] = pd.to_datetime(df['ABZEIT'], format='%H%M').dt.strftime('%H:%M')
方法2:字符串切片拼接
# 补零后直接分割小时和分钟并拼接 df['ABZEIT'] = df['ABZEIT'].astype(str).str.zfill(4).apply(lambda x: f"{x[:2]}:{x[2:]}")
效果验证
执行上述代码后,"ABZEIT"列前几行将变为:13:05、15:40、14:20、16:30、07:40、12:05、17:15,符合预期格式。
内容的提问来源于stack exchange,提问作者luscgu00
相关产品推荐
相关产品推荐

