python – 计算pandas datetime列的累积持续时间
发布时间:2020-12-20 11:03:54 所属栏目:Python 来源:网络整理
导读:假设我有以下pandas数据帧 df = pd.DataFrame ({'time': ['2014-05-01 18:47:05','2014-05-01 18:47:06','2014-05-02 18:47:08','2014-05-02 18:47:10','2014-05-02 18:47:11']})df['time'] = pd.to_datetime(df['time']) 这给出了以下数据帧 time0 2014-05-
假设我有以下pandas数据帧
df = pd.DataFrame ({'time': ['2014-05-01 18:47:05','2014-05-01 18:47:06','2014-05-02 18:47:08','2014-05-02 18:47:10','2014-05-02 18:47:11']}) df['time'] = pd.to_datetime(df['time']) 这给出了以下数据帧 time 0 2014-05-01 18:47:05 1 2014-05-01 18:47:06 2 2014-05-02 18:47:08 3 2014-05-02 18:47:10 4 2014-05-02 18:47:11 我想添加另一列,以秒为单位计算时间列的持续时间,如下所示 time duration 0 2014-05-01 18:47:05 0 1 2014-05-01 18:47:06 1 2 2014-05-02 18:47:08 3 3 2014-05-02 18:47:10 5 4 2014-05-02 18:47:11 6 显然,我可以做一些循环并手动改变,但我怀疑这不是一个pythonic方式.大熊猫中是否有任何可以简化此过程的功能? 解决方法
这将获得以秒为单位的总差异(即计算日期差异):
df['duration'] = pd.to_timedelta( df['time'] - df['time'][0] ).astype('timedelta64[s]') (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |