将MM:SS列转换为Pandas中的HH:MM:SS列。我尝试了所有可能的方法,比如改变数据类型、to_datetime和to_timedelta,但是我无法掩盖这个系列。请帮帮别人。我遇到了一些错误,比如:
(这里的芯片时间是MM:SS格式,我想用HH:MM:SS修改它)
df2["ChipTime"]=pd.to_datetime(df2.ChipTime, unit="hour").dt.strftime('%H:%M:%S')ValueError:不能投单位小时
df2["ChipTime"]=pd.to_timedelta(df2["ChipTime"])ValueError:预期hh:mm:ss格式
df2["ChipTime"]=df2["ChipTime"].astype(int)ValueError: int()的文本无效,基10:'16:48‘
我尝试过更多的方法,以上是其中的一些,我是潘达斯的初学者,所以请原谅我做错了什么。谢谢
发布于 2019-12-18 13:17:55
如果将值转换为日期时间,则在to_datetime中添加默认年份、月份、日和参数格式,如果可以通过Series.dt.time将值转换为时间
df2 = pd.DataFrame({'ChipTime':['16:48','10:48']})
df2["ChipTime1"]=pd.to_datetime(df2.ChipTime, format="%M:%S")
df2["ChipTime11"]=pd.to_datetime(df2.ChipTime, format="%M:%S").dt.time或者对于timedelta,to_timedelta为默认时间添加to_timedelta
df2["ChipTime2"]=pd.to_timedelta('00:' + df2["ChipTime"])
print (df2)
ChipTime ChipTime1 ChipTime11 ChipTime2
0 16:48 1900-01-01 00:16:48 00:16:48 00:16:48
1 10:48 1900-01-01 00:10:48 00:10:48 00:10:48https://stackoverflow.com/questions/59392906
复制相似问题