python - 使用带有小数点的`pandas.to_timedelta`
问题描述
在我的 CSV 中,我有一列将持续时间写为13:08.4
和13:06.20
。
我想将此列转换为 pandas timedelta。
但是,当我尝试时df['Time'] = pd.to_timedelta(df['Time'])
出现错误ValueError: expected hh:mm:ss format before .
发生了什么事,我该如何解决?
解决方案
您可以用类似的错误替换'.'
,':'
以使其格式为hh:mm:ss
:
df['Time'] = pd.to_timedelta(df['Time'].str.replace('.',':'))
#13:08.4 becomes: 0 days 13:08:04
或者
如果使用“时间”格式,mm:ss
则使用:
df['Time'] = pd.to_timedelta('00:'+df['Time'])
#13:08.4 becomes: 0 days 00:13:08.400000
推荐阅读
- python - 三个 post 请求到同一个方法,如何只运行一次方法,将结果共享给他们三个?
- python-3.x - 24小时后如何删除某个角色?
- php - 我在站点根目录中没有 WordPress,并且希望通过单个 wordpress 安装实现两个子目录
- angularjs - AngularJS 中使用 $index 的嵌套循环(ng-repeat)
- python - 如何在变量和治疗的组合上循环单样本 t 检验?
- sql - 从 Postgresql 中当前年份的月份名称获取开始日期和结束日期
- python - 如何使用 python 3 读取 csv 文件
- c++ - C++)如何从一个类中使用其他类的方法?
- javascript - 如何使用 JavaScript 或 Node.js 删除 PDF 注释?
- vue.js - Vue js 生成未定义的新表格行数据数组