資料預處理
方法一:基於geohash的停車點匹配潮汐點計算
方法二:基於距離匹配計算潮汐點
本次主要針對學習baseline過程中未曾想到的方法與**技巧進行分享
通過共享單車訂單資料與共享單車停車點資料進行匹配,可以獲得不同時間共享單車在何處開啟與關閉的資料。針對二者計算差值可以獲得不同停車點的潮汐值,對比停車點的面積可以獲得潮汐密度。
停車點的面積應該如何計算?
如何將單車與停車點進行匹配?
如何定位每個停車點中心並求其面積?
將停車點的loaction處理成矩陣形式
找出每個停車點經緯度的最大值與最小值
通過對列求平均值獲得停車點的中心經緯度
以最大最小經緯度之間的距離表停車點面積(利用geopy庫的geodesic函式)
lambda x : geodesic(
(x['min_latitude'
], x[
'min_longitude'])
,(x[
'max_latitude'
], x[
'max_longitude'])
).meters
import geohash
bike_order[
'geohash'
]= bike_order.
(lambda x: geohash.encode(x[
'latitude'
], x[
'longitude'
], precision=6)
, axis=1)
bike_fence[
'geohash'
]= bike_fence[
'fence_center'].
(lambda x: geohash.encode(x[0]
, x[1]
, precision=6)
)
pivot_table透視表:pivot_table(df,values,index,columns,aggfunc,fill_value)
index
為表的行,columns
為表的列,values
為表中行列確定的值,aggfunc
為聚合方法,fill_value
填充空值
bike_flow = pd.pivot_table(bike_order[bike_order[
'lock_status']==
1],values=
'lock_status'
, index=
['geohash'],
columns=
['day_hour'
], aggfunc=
'count'
, fill_value=
0)
組隊學習 分治演算法 打卡
將原本複雜的問題,拆分成相同解決方法的簡單的小問題,然後將小問題的答案歸併成初始問題的解。採用遞迴的方式,將問題層層分解,直到子問題滿足設定好的終止條件結束遞迴求解子問題的解,然後將解歸併。示意圖如下 示例1 輸入 3,2,3 輸出 3 示例2 輸入 2,2,1,1,1,2,2 輸出 2 首先想到的...
Datawhale組隊學習 Task01 分治
分治在倒排索引 pagerank 計算 網頁分析等搜尋引擎相關的技術中都有大量的應用。分治演算法的主要思想是將原問題遞迴地分成若干個子問題,直到子問題滿足邊界條件,停止遞迴。將子問題逐個擊破 一般是同種方法 將已經解決的子問題合併,最後,演算法會層層合併得到原問題的答案。def divide con...
機器學習演算法組隊學習 決策樹
決策樹是一種常見得機器學習方法,一顆決策樹主要包含三個部分,乙個根節點 若干內部節點和若干葉節點 資訊熵 是度量樣本幾何純度最常用得一種指標,定義為 考慮到不用得分支節點所包含得樣本數不同,給分支節點賦予權重,樣本數越多的分支節點影響力越大,於是可以得到 資訊增益 一般而言,資訊增益越大,意味著用屬...