我正在用python3中的熊猫阅读excel。excel有一个列,记录每个记录花费的时间(以分钟和秒为单位)。第二列的内容是3:52,它是在特定步骤中花费的3分52秒,而不是熊猫df处理的“3:52:00 AM”。有办法避免吗? 以下是数据在excel中的外观:
在上面的excel中,56:52:00实际上是56分52秒(同样如此)。excel列中的数据严格采用标题时间(mm:ss)中定义的格式。。在某些表单中可能是时间(hh:mm:ss)
以下是我创建df的方式:
>>> df = xl.parse(sheet_name,header=None,encoding="utf-8", skiprows=3,usecols={1})
>>> df
1
0 03:52:00
1 04:52:00
2 05:52:00
3 06:52:00
4 07:52:00
.. ...
115 1900-01-02 08:52:00
116 1900-01-02 09:52:00
117 1900-01-02 10:52:00
118 1900-01-02 11:52:00
119 00:52:00
>>> df.dtypes
1 object
dtype: object
这应该对你有用。当pandas使用pandas.read_excel()读取excel文件时,它会将持续时间作为时间(HH:MM:SS)输入,其中3作为小时,52作为分钟,或者作为日期时间(YYYY-MM-DD HH:MM:SS)
代码将创建一个函数,通过从时间中减去午夜(date.min)并将其除以60,以分钟和秒(而非小时和分钟)表示持续时间,从而将该时间转换为时间增量(HH:MM:SS,3分52秒)
您可以使用timedelta模块修改持续时间的显示方式。可能有一种更好的方法将持续时间作为时间增量读取,但我不确定如何执行该操作
可以在
read_excel()
时使用converters
kwarg,并指定要转换类型以使用的列标题名或
dtype
kwarg相关问题 更多 >
编程相关推荐