繁体   English   中英

如何计算经过的天数和小时数

[英]how to calculate elapsed time in days and hours

大家好,我有两列为datetime格式,我想创建一个新列,以天为单位经过时间,第二列以小时为单位包含其余时间。 请参见示例:

我的数据:

# importing pandas as pd 
import pandas as pd 

# creating a dataframe 
df = pd.DataFrame({'DATE_IDENTIFIED': ['2019-06-27 10:42:50 ', '2019-06-28 13:11:58', '2019-06-20 13:12:23','2019-06-26 11:14:59','2019-06-26 11:16:04'], 
   'DATE_CLOSED': ['2019-09-27 10:40:38', '2019-06-28 19:11:22', 
   '2019-06-28 18:11:22','2019-06-26 13:13:38','2019-06-28 14:15:37']}) 


DATE_IDENTIFIED                   DATE_CLOSED
0   2019-06-27 10:42:50           2019-06-27 10:40:38
1   2019-06-28 13:11:58           2019-06-28 13:11:22
2   2019-06-28 13:12:23           2019-06-28 13:11:22
3   2019-06-26 11:14:59           2019-06-26 11:13:38
4   2019-06-26 11:16:04           2019-06-26 11:15:37

DATE_IDENTIFIED                   DATE_CLOSED         days       hours
2019-06-27 10:42:50           2019-09-27 10:40:38        90        0
2019-06-28 13:11:58           2019-06-28 19:11:22         0        6
2019-06-20 13:12:23           2019-06-28 18:11:22         8        5
2019-06-26 11:14:59           2019-06-26 13:13:38         0        2
2019-06-26 11:16:04           2019-06-28 14:15:37         2        3

也许这篇文章中的代码可能会使您入门:

df['A'] = pd.to_datetime(df['A'])
df['B'] = pd.to_datetime(df['B'])

df['C'] = (df['B'] - df['A']).dt.days

对于剩余的小时数,您可能需要做一些额外的数学运算,例如转换小时数之差并减去24小时的天数

df['B'] = (df['B'] - df['A']).dt.hours - df['C'] * 24

您需要做:

### first convert your columns to datetime object if it is not already
df['DATE_IDENTIFIED']  = pd.to_datetime(df['DATE_IDENTIFIED'])
df['DATE_CLOSED']  = pd.to_datetime(df['DATE_CLOSED'])

### GET DAYS LIKE THIS
df['days'] = (df['DATE_CLOSED'] - df['DATE_IDENTIFIED']).dt.days

### GET HOURS LIKE THIS
df['hours'] = df['DATE_CLOSED'].dt.hour - df['DATE_IDENTIFIED'].dt.hour

输出:

      DATE_IDENTIFIED         DATE_CLOSED  days  hours
0 2019-06-27 10:42:50 2019-09-27 10:40:38    91      0
1 2019-06-28 13:11:58 2019-06-28 19:11:22     0      6
2 2019-06-20 13:12:23 2019-06-28 18:11:22     8      5
3 2019-06-26 11:14:59 2019-06-26 13:13:38     0      2
4 2019-06-26 11:16:04 2019-06-28 14:15:37     2      3

暂无
暂无

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

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