pandas 關於時間篩選的一點坑

2021-10-04 02:36:30 字數 1232 閱讀 4410

最近遇上兩個需求:

1.通過僅有時分秒的資料項篩選時間(datatime)

2.計算兩個僅有時分秒的資料項之間的時間差的總秒數(timeoffset)

先亮結果

經過:起初我看到這個時間格式,錯以為可以直接用於比較,但實際上這樣的比較計算機是識別不出來的,必須要加上年月日(我懷疑時間比較需要將時間轉換成時間戳格式,所以才需要年月日,這一點有待日後驗證)

因此第乙個需求

import pandas as pd

date =

'20200302'

data = old_data[pd.to_datetime(

str(date)

+" "

+old_data[

'updatetime'

].astype(

'str'))

> \

pd.to_datetime(

str(date)

+" 09:14:59"

)]

1.如果不加str年月日的話也可將時分秒傳入to_datetime函式,不過生成時間的年月日是系統時間。

2.to_datetime函式目前已知可轉換str以及時間戳型別資料為datetime格式,更多的功能待日後探索

第二個需求

和上乙個需求型別,只不過程式設計兩個datetime型別相減之後,呼叫高階介面dt類中的方法total_seconds即可將時間差轉化為秒級別

data[

'timeoffset']=

(pd.to_datetime(

str(date)

+" "

+data[

'datatime'

].astype(

'str'))

-\ pd.to_datetime(

str(date)

+" 08:00:00"))

.dt.total_seconds(

).astype(

int)

ps:pandas中的三個高階介面dt、str、cat用處無窮!

關於時間利用的一點思考

首先必須要承認,個體之間是有很大差異的,那麼個體之間的大腦的活性就是有區別的.而且對於不同的事物,大腦活性也可能是不同的.這裡假設對於某件事情,大腦的活性隨時間變化的函式為f t 那麼不同人對不同事物的學習上會得到不同的函式曲線.而不同事物本身會存在不同子項,比如,學習繪畫這件事情.就包括了對線條,...

關於延遲時間的一點智慧型

關於延遲時間的一點智慧型 一般的做法 sleep 2000 延遲2秒 此種做法有倆個弊端 1 如果實際需要的延遲時間不需要2秒,則明顯有延遲時間浪費 2 如果實際需要的延遲時間超過2秒,則很可能發生不可預料的錯誤。改進的做法 repeat sleep 10 until fileexists c te...

關於iBatis selectKey的一點筆記

技術前提 我們使用ibatis作為持久層方案 技術場景 假設我們有兩張表,一張主表main,一張子表sub,並且主表的主鍵是由資料庫維護的自增長的主鍵,子表中有乙個字段引用這個主鍵,那麼當我們插入主表資料後,就需要馬上返回這個自增長的主鍵。解決方案 可以在insert時通過ibatis的select...