已知乙個datetime,篩選其前七天的資料

2021-10-25 01:34:51 字數 1440 閱讀 5240

一開始想的很簡單,直接用timedelta求7天的時間差,然後原始資料減去時間差,然後只需大於data_pre_seven,小於a即可,如下:

a = pd.to_datetime('20120701 11:22:33')

sevenday = datetime.timedelta(days=7)

date_pre_seven = a - sevenday

pre_seven_day = id_data[(id_data['日期時間'] > date_pre_seven) & (id_data['日期時間'] < a)

但是後來發現,這求出來的好像不是我想要的,按上述方法求取的是20120624 11:22:33到20120701 11:22:33的資料,而我想要的是20120624 00:00:00到20120630 00:00:00的資料.

後來就想能不能把datetime的日期保留,但是時間也就是時分秒變為0,這樣不就是想要的了嘛.於是去找了下datatime怎麼轉換成date,然後在加上時分秒皆為0的資料.

**:1.date轉為datetime型別,使用datetime的combine():

>>> from datetime import datetime,date,time 

>>> d = date(2011,7,14)

>>> dt = datetime.combine(d,time())

>>> dt #datetime.datetime(2011, 7, 14, 0, 0)

2. datetime轉為date型別,使用datetime的date():

>>> d1 = dt.date()

>>> d1 #datetime.date(2011, 7, 14)

a = pd.to_datetime('20120701 11:22:33')

sevenday = datetime.timedelta(days=7)

date_pre_seven = a - sevenday

date_pre_seven_begin = datetime.datetime.combine(date_pre_seven.date(),datetime.time())

# datetime.datetime(2012, 6, 24, 0, 0)

date_pre_seven_end = datetime.datetime.combine(a.date(),datetime.time())

# datetime.datetime(2012, 7, 1, 0, 0)

pre_seven_day = id_data[(id_data['日期時間'] > date_pre_seven_begin ) & (id_data['日期時間'] < date_pre_seven_end )

已知乙個GeoTiff,得到其邊界向量的方法

在製作geotiff的樣本時,經常需要知道它的邊界向量,原因如下 沒有原始的裁切向量 裁切它的向量柵格化後與影像相差乙個畫素 摘要 製作乙個與原影像同座標系但是值全部為0的中間影像a 將a向量化 不足 沒有座標系,需要手動新增 附 import gdal import ogr import sys ...

刪除乙個已知節點

delete a node in a list input plisthead the head of list ptobedeleted the node to be deleted void deletenode listnode plisthead,listnode ptobedeleted ...

C 實現乙個DateTime集合

題目 定義乙個集合,型別為時間型別。要求集合內容為從今天開始按索引加一天的公升序排序 累加的天數為10天 新建控制台應用程式輸出剛剛的集合到前台並格式化日期為 2019 xx xx 判斷如果日期 day為偶數,則通過報錯的方法輸出到控制台上,並不影響接下去的輸出。錯誤內容為 當天為偶數字,日期 20...