首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >秘密MM:SS柱到HH:MM:SS柱在潘达斯?

秘密MM:SS柱到HH:MM:SS柱在潘达斯?
EN

Stack Overflow用户
提问于 2019-12-18 13:16:06
回答 1查看 874关注 0票数 1

将MM:SS列转换为Pandas中的HH:MM:SS列。我尝试了所有可能的方法,比如改变数据类型、to_datetime和to_timedelta,但是我无法掩盖这个系列。请帮帮别人。我遇到了一些错误,比如:

(这里的芯片时间是MM:SS格式,我想用HH:MM:SS修改它)

代码语言:javascript
运行
复制
df2["ChipTime"]=pd.to_datetime(df2.ChipTime, unit="hour").dt.strftime('%H:%M:%S')

ValueError:不能投单位小时

代码语言:javascript
运行
复制
df2["ChipTime"]=pd.to_timedelta(df2["ChipTime"])

ValueError:预期hh:mm:ss格式

代码语言:javascript
运行
复制
df2["ChipTime"]=df2["ChipTime"].astype(int)

ValueError: int()的文本无效,基10:'16:48‘

我尝试过更多的方法,以上是其中的一些,我是潘达斯的初学者,所以请原谅我做错了什么。谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-18 13:17:55

如果将值转换为日期时间,则在to_datetime中添加默认年份、月份、日和参数格式,如果可以通过Series.dt.time将值转换为时间

代码语言:javascript
运行
复制
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

代码语言:javascript
运行
复制
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:48
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59392906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档