我在dataframe中计算了持续时间,但我想得到以秒为单位的持续时间,而不是它给出的值(0 days, 00:10:25
等):
df['duration'] = df['end_date'] - df['start_date']
df.head(2)
started_at ended_at start_date end_date duration
0 2021-01-23 16:14:19 2021-01-23 16:24:44 2021-01-23 16:14:19 2021-01-23 16:24:44 0 days 00:10:25
1 2021-01-27 18:43:08 2021-01-27 18:47:12 2021-01-27 18:43:08 2021-01-27 18:47:12 0 days 00:04:04
我尝试了here的一些解决方案,但我不确定如何正确地做,没有任何效果;比如我试过这个:
df['duration'] = datetime.timedelta.total_seconds(df['duration'])
但上面写着
TypeError: descriptor 'total_seconds' for 'datetime.timedelta' objects doesn't apply to a 'Series' object
2条答案
按热度按时间czq61nw11#
应该可以使用total_seconds方法,但是需要通过datetime访问器
dt
访问该方法。但是,如果系列
Duration
是字符串/对象-则应使用pd.to_timedeltakqlmhetl2#
我会尝试在您的Series上运行apply
从您的错误。它是说,您正在尝试运行它的一个系列