擅长:python、mysql、java
<p>这应该对你有用。当pandas使用pandas.read_excel()读取excel文件时,它会将持续时间作为时间(HH:MM:SS)输入,其中3作为小时,52作为分钟,或者作为日期时间(YYYY-MM-DD HH:MM:SS)</p>
<pre><code> 0 1
0 1 03:52:00 (time object)
118 1 1900-01-02 08:52:00 (datetime object)
119 1 00:52:00 (time object)
</code></pre>
<p>代码将创建一个函数,通过从时间中减去午夜(date.min)并将其除以60,以分钟和秒(而非小时和分钟)表示持续时间,从而将该时间转换为时间增量(HH:MM:SS,3分52秒)</p>
<pre><code> 0 1
0 1 00:03:52 (timedelta object)
118 1 00:56:52 (timedelta object)
119 1 00:00:52 (timedelta object)
</code></pre>
<p>您可以使用timedelta模块修改持续时间的显示方式。可能有一种更好的方法将持续时间作为时间增量读取,但我不确定如何执行该操作</p>
<pre><code>import pandas as pd
from datetime import datetime, date
df=pd.read_excel("filepath")
def convert_to_duration(timeobj):
if type(timeobj) == datetime:
datetimemin = datetime.strptime("1899-12-31 00:00:00","%Y-%m-%d %H:%M:%S")
return (timeobj - datetimemin)/60
if type(timeobj) == time:
return (datetime.combine(date.min,timeobj)-datetime.min)/60
df[1]=df[1].apply(convert_to_duration)
df
</code></pre>