时间用法

1 时间戳

1 k = time.localtime(test_sample['createtime'][i])
2 t = time.strftime("%Y/%m/%d %H:%M:%S", k)    #注意空格也会在list t中
3 print(t)

test_sample中是已知的时间戳   如上将时间戳转化为具体的时间   参考:https://www.cnblogs.com/jfl-xx/p/8024596.html

2 时间字符串与标准时间格式的转化

https://www.cnblogs.com/huzhe123/p/9308057.html

3 时间的加减

1> timedelta可以用于实现对时间的加减

1 from datetime import timedelta,datetime
2 time1 = datetime.now()
3 print (time1.strftime("%y-%m-%d %H:%M:%S"))
4 print ((time1+timedelta(hours =1)).strftime("%y-%m-%d %H:%M:%S"))

输出:

19-05-02 15:47:39
19-05-02 16:47:39

2> 计算dateframe中某两列的时间差

如下所示,利用pandas中的to_datetime()函数可以将字符串转化为时间格式,最后减出来的数据类型是timedelta.

train['cha'] = pd.to_datetime(train['due_date'])-pd.to_datetime(train['auditing_date'])

4 按日期条件进行时间筛选

1 import pandas as pd
2 import datetime
3 df = pd.read_csv('./data.csv')
4 
5 df['report_date'] = pd.to_datetime(df['report_date'])
6 df = df.set_index('report_date')
7 
8 print(df['2013/7/5':'2013/7/10'])
9 print(df['2013/09':'2013/10'])

先将日期格式转化,再将日期列化为index列,即可直接用切片对数据按日期进行筛选

参考:https://www.jianshu.com/p/b91e3ae940ec

5 计算某个日期是星期几

from datetime import date

str = '20160217'
print(date(int(str[0:4]), int(str[4:6]), int(str[6:8])))
print(date(int(str[0:4]), int(str[4:6]), int(str[6:8])).weekday() + 1)
# 2016-02-17
# 3

 6 想要找出dateframe中某列的最大值或最小值时,可直接max(df['列名'])

也可以df.max()直接输出每列的最大值

posted on 2019-04-24 15:40  吃我一枪  阅读(249)  评论(0编辑  收藏  举报

导航