python:pandas计算时间差

Python016

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 time

import datetime

# 将时间str转化为普通时间类型,用于计算

startTime = datetime.datetime.strptime(startTime,"%Y-%m-%d %H:%M:%S")

endTime = datetime.datetime.strptime(endTime,"%Y-%m-%d %H:%M:%S")

sample_time = datetime.datetime.strptime(time_string, '%Y-%m-%dT%H:%M:%SZ')

(第一个参数为字符串形式的时间,第二个参数为该字符串形式时间的格式)

# 时间运算

seconds = (endTime- startTime).seconds

hours=(endTime- startTime).hours

day=(endTime- startTime).day

# 计算时间差

startTime = time.clock()

endTime = time.clock()

runTime = endTime - startTime

python 计算时间差秒:

Q:如何方便的计算两个时间的差,如两个时间相差几天,几小时等

A:使用datetime模块可以很方便的解决这个问题,举例如下:

上例演示了计算两个日期相差天数的计算。

上例演示了计算运行时间的例子,以秒进行显示。

上例演示了计算当前时间向后10小时的时间。

拓展:其本上常用的类有:datetime和timedelta两个。它们之间可以相互加减。每个类都有一些方法和属性可以查看具体的值,如datetime可以查看:天数(day),小时数(hour),星期几(weekday())等timedelta可以查看:天数(days),秒数(seconds)等。