将时间转换为总秒数

问题描述 投票:0回答:1

我想从现有的'TimeMajor'列中创建一个新的'Time'列,它将以总秒数的形式包含时间,其内容将为整数类型。例如,>

00:00:05 = 5 secs
00:14:10 = 850 secs
02:30:10 = 9010 secs

代码:

data["TimeMajor"] = pd.to_datetime(data["created_at"])
data['Time'] = data.TimeMajor.dt.time
data['Time'].timedelta.total_seconds()

给出:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-47-d7912fbaf9b4> in <module>()
----> 1 data['Time'].timedelta.total_seconds()

/usr/local/lib/python3.6/dist-packages/pandas/core/generic.py in __getattr__(self, name)
   5272             if self._info_axis._can_hold_identifiers_and_holds_name(name):
   5273                 return self[name]
-> 5274             return object.__getattribute__(self, name)
   5275 
   5276     def __setattr__(self, name: str, value) -> None:

AttributeError: 'Series' object has no attribute 'timedelta'
    

我想从现有的'TimeMajor'列中创建一个新的'Time'列,它将以总秒数的形式包含时间,其内容将为整数类型。例如,00:00:05 = 5 ...

python datetime timedelta
1个回答
0
投票

首先使用timedelta列'data [“ TimeMajor”]'中的time组件的等效字符串转换为datetime dtype:

© www.soinside.com 2019 - 2024. All rights reserved.