這次帶給大家python怎麼處理dataframe的時間字段,python處理dataframe時間字段的注意事項有哪些,下面就是實戰案例,一起來看一下。
在機器學習過程中,通常會透過pandas讀取csv文件,保持成dadaframe格式,然而有時需要對dataframe中的時間字段進行資料建模,例如時間格式為datetime,那麼像一般操作dataframe的方式來操作時間欄位會報錯的,所以在使用sklearn函式庫進行fit和predict的時候,通常要把時間欄位先轉換為timestamp格式,在fit和predict之後,如果需要matplotlib繪圖的時候,再把timestamp格式轉換成時間字串,例如2017-02-01 14:25:14。
以下是我處理過的一段程式碼,希望可以幫到童鞋們!
doc_list1 = [] for i in doc1.iloc[:,1:2].values.tolist(): # 转换成了时间戳格式 for j in i: dt = time.strptime(j, "%Y-%m-%d %H:%M:%S") dt_new = time.mktime(dt) doc_list1.append(dt_new) doc_list2 = [] for i in doc_list1: time_local = time.localtime(i) dt = time.strftime("%Y-%m-%d %H:%M:%S",time_local) dt1 = datetime.datetime.strptime(dt, "%Y-%m-%d %H:%M:%S") doc_list2.append(dt1)
X1 = np.mat(doc_list1).T y1= test_target1001 clf = AdaBoostRegressor(DecisionTreeRegressor(max_depth=5),n_estimators=1000, random_state=rng) clf.fit(X1,y1) yhat1 = clf.predict(X1)
##補充一下:如果value不是datetime格式還需要進行轉換##value = result.iloc[:,1]
list = []
for i in value:
print(type(i.to_pydatetime().timetuple()),i)
list.append(time.mktime(i.to_datetime().timetuple()))
print(list)
推薦閱讀:
object怎麼轉換成float資料Vue2.0中v-for迭代語法圖文詳解#
以上是python怎麼處理dataframe的時間字段的詳細內容。更多資訊請關注PHP中文網其他相關文章!