python:pandas计算时间差

Python017

python:pandas计算时间差,第1张

import pandas as pd

方法一:

先利用to_datetime转换为时间格式,tm列的数据形式为'yyyy-MM-dd HH:mm:ss'

df['tm_1'] = pd.to_datetime(df['tm_1'])

df['tm_2'] = pd.to_datetime(df['tm_2'])

利用".dt.seconds"转换为秒,除以相对于的间隔数得到分钟、小时等

df['diff_time'] = (df['tm_1'] - df['tm_2']).dt.seconds/3600

利用round函数可进行四舍五入

df['diff_time'] = round(df['diff_time'])

方法二,日期相减变为小时;变为天的话将h替换为D即可:

df['diff_time'] = (df['tm_1'] - df['tm_2']).values/np.timedelta64(1, 'h')

import datetime#首行输入,导入模块

date1=datetime.date(year,month,day)#这里面year,month,day是代表年,月,日,年必须写成2021这种格式,都必须写成数字

date2=datetime.date(year,month,day)#同上,这个是第二个日期(后面的),上面的是第一个日期(前面的)

delta=date2-date1#这是两个日期相减,是一个时间差对象

diffdays=delta.total_seconds()//86400#差的秒数除以86400即可

print(diffdays)#打印差的天数

1、方便的计算两个时间的差,如两个时间相差几天,几小时:

2、python计算两个时间之间的秒数

3、时间相加

计算当前时间向后10天的时间。参数可以是days, hours,minutes,seconds,microseconds,如果是负数就是向前多少时间其本上常用的类: datetime和timedelta两个。它们之间可以相互加减。每个类都有一些方法和属性可以查看具体的值,如 datetime可以查看:天数(day),小时数(hour),星期几(weekday())等timedelta可以查看:天数(days),秒数 (seconds)等