.apply()替代for迴圈減少處理資料時間
阿新 • • 發佈:2019-01-30
目的是希望講時間對其,開始寫for迴圈,差不多30分鐘,然後用apply後
a=[] d=[] df1=pd.DataFrame(None,columns=['datetime','IO_2008',]) for i in range(len(IO_Values[id[0]])): aa=IO_Values[id[0]][i][1] tm=IO_Values[id[0]][i][0].timetuple() dd=time.mktime(tm) bb=dd-(dd%30) cc=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(bb)) df1=df1.append({'datetime':cc,'IO_2008':aa},ignore_index=True)
時間最後縮短為8S!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
雖然程式碼不是很複雜,但是縮短了很多時間,開心。
for i in range(len(df2008)):
if df2008['IO_2008'].isnull()[i] == True:
df2008['IO_2008'][i] = df2008['IO_2008'][i-1]
還有一個,我想用上一個資料填充,寫個判斷迴圈,後來發現
df.ffill()
直接就可以,我的天,哭了