繁体   English   中英

Python 将日期时间转换为秒

[英]Python convert dateTime to seconds

我的数据框中有一列格式为 11/24/2020 7:09:45。 我想创建另一列,该列是前一行和当前行之间以秒为单位的增量。 我可能让这种方式变得比它需要的更复杂。

import pandas as pd
import numpy as np

df
run     run_ts
11:02   11/30/2020 7:24:00
10:11   11/30/2020 7:23:00
16:08   11/30/2020 7:35:00
14:33   11/30/2020 7:32:00
14:27   11/30/2020 7:25:45
14:26   11/30/2020 7:25:25
14:25   11/30/2020 7:25:10
14:24   11/30/2020 7:24:55
NaaN    11/30/2020 7:24:15
NaaN    11/30/2020 7:24:30

df['timeDiff'] = np.where(df['run'] == "NaaN", df['run_ts'].shift(1)-df['run_ts']), "")

TypeError: unsupported operand type(s) for -: 'str' and 'str'

我不确定该朝哪个方向发展。 谢谢您的帮助!

尝试.total_seconds() 此处查看相同问题的答案。

解析to_datetime ,取差异,然后取秒数 前任:

df['run_ts'] = pd.to_datetime(df['run_ts'], format="%m/%d/%Y %H:%M:%S")

df['diff_to_prev[s]'] = df['run_ts'].diff().dt.total_seconds()

df
     run              run_ts  diff_to_prev[s]
0  11:02 2020-11-30 07:24:00              NaN
1  10:11 2020-11-30 07:23:00            -60.0
2  16:08 2020-11-30 07:35:00            720.0
3  14:33 2020-11-30 07:32:00           -180.0
...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM