从系列中提取 hour/min/seconds

Extract hour/min/seconds from Series

我必须从 "session" 列中提取 hour/min/sec 并将它们添加到时间。有什么方法可以使用 pandas?

我有这样的东西:

0    22 hrs 7 min 27 sec
1          10 min 10 sec
2          31 min 19 sec
Name: session, dtype: object

我想将此列值转换为秒数,然后将总秒数添加到我的其他时间列中。这将给我花费的总时间。

关于如何在 df 中拆分此类列有什么建议吗?

如果您调整格式,您可以使用 to_timedelta(然后您可以将其添加到日期时间列):

In [11]: s
Out[11]:
0    22 hrs 7 min 27 sec
1          10 min 10 sec
2          31 min 19 sec
Name: delta, dtype: object

In [12]: s.str.replace('rs|in|ec', '')
Out[12]:
0    22 h 7 m 27 s
1        10 m 10 s
2        31 m 19 s
Name: delta, dtype: object

In [13]: pd.to_timedelta(s.str.replace('rs|in|ec', ''))
Out[13]:
0   22:07:27
1   00:10:10
2   00:31:19
Name: delta, dtype: timedelta64[ns]

也许 to_timedelta 的格式参数会是一个很好的增强。