大數(shù)據(jù)治理(高級) 課件 西財 實訓(xùn)項目11:交通大數(shù)據(jù)分析實訓(xùn)_第1頁
大數(shù)據(jù)治理(高級) 課件 西財 實訓(xùn)項目11:交通大數(shù)據(jù)分析實訓(xùn)_第2頁
大數(shù)據(jù)治理(高級) 課件 西財 實訓(xùn)項目11:交通大數(shù)據(jù)分析實訓(xùn)_第3頁
大數(shù)據(jù)治理(高級) 課件 西財 實訓(xùn)項目11:交通大數(shù)據(jù)分析實訓(xùn)_第4頁
大數(shù)據(jù)治理(高級) 課件 西財 實訓(xùn)項目11:交通大數(shù)據(jù)分析實訓(xùn)_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

實訓(xùn)11交通大數(shù)據(jù)分析實訓(xùn)項目背景隨著智能交通技術(shù)的不斷發(fā)展,憑借各種交通數(shù)據(jù)采集系統(tǒng),交通領(lǐng)域積累的數(shù)據(jù)規(guī)模膨大,飛機(jī)、列車、水陸路運輸逐年累計的數(shù)據(jù)從過去TB級別達(dá)到目前PB級別,同時伴隨近幾年大數(shù)據(jù)分析、挖掘等技術(shù)迅速發(fā)展,對海量的交通數(shù)據(jù)進(jìn)行挖掘分析是交通領(lǐng)域發(fā)展的重要方向,得到了各地政府和企業(yè)的高度重視。交通大數(shù)據(jù)的有效利用與人們的生活息息相關(guān),不僅能夠給人們的生活創(chuàng)造巨大的便利,也能為政府的規(guī)劃、城市的發(fā)展提供堅實的數(shù)據(jù)支撐。交通運輸部數(shù)據(jù)顯示,目前全國有360余個城市投放了共享單車,在營車輛約1950萬輛,注冊用戶數(shù)超過3億。共享單車用戶的騎行行為會留下大量的數(shù)據(jù),如何分析和挖掘相關(guān)數(shù)據(jù),為共享單車的治理和優(yōu)化提供數(shù)據(jù)支持,具有極其重要的意義。本項目將對共享單車的騎行數(shù)據(jù)進(jìn)行挖掘,探索用戶騎行的規(guī)律與模式。實訓(xùn)任務(wù)騎行數(shù)據(jù)缺失值、異常值的檢測與處理自定義特征,統(tǒng)計站點每半小時的進(jìn)出流量騎行數(shù)據(jù)描述性統(tǒng)計分析站點騎行流量探索性分析利用Apriori算法對站點流量進(jìn)行關(guān)聯(lián)規(guī)則挖掘利用FPGrowth算法對站點流量進(jìn)行關(guān)聯(lián)規(guī)則挖掘數(shù)據(jù)準(zhǔn)備本項目所分析的數(shù)據(jù)來自CitiBike,這是一家主要運營在美國紐約市的共享單車公司。CitiBike共享單車業(yè)務(wù)早在2013年5月就首次運營,推出當(dāng)天就有1.6萬名會員注冊,可見大家對該項目的喜愛。經(jīng)過多年的發(fā)展CitiBike先后推出了330個站點和5000輛自行車,主要分布在曼哈頓下城和布魯克林西北區(qū)。本次分析的數(shù)據(jù)為CitiBike在2017年7月的騎行數(shù)據(jù),該數(shù)據(jù)由公司自行公開,可從如下地址進(jìn)行下載:/tripdata/201707-citibike-tripdata.csv.zip。數(shù)據(jù)準(zhǔn)備此數(shù)據(jù)共有1735599條騎行記錄,包括15個字段,具體含義及類型如下表所示。分析步驟知識儲備關(guān)聯(lián)規(guī)則挖掘概述關(guān)聯(lián)規(guī)則挖掘:一種發(fā)現(xiàn)大量數(shù)據(jù)中事物(特征)之間有趣的關(guān)聯(lián)的技術(shù)。典型應(yīng)用是購物籃分析:找出顧客購買行為模式、發(fā)現(xiàn)交易數(shù)據(jù)庫中不同商品(項)之間的聯(lián)系。例如,通過關(guān)聯(lián)規(guī)則挖掘可能會發(fā)現(xiàn),購買牛奶的用戶往往會同時購買面包,或是購買的尿布的用戶往往會同時購買啤酒等。在此基礎(chǔ)上,商家可以考慮進(jìn)行定制化的推薦或者營銷,輔助進(jìn)行經(jīng)營方針的制定,如商品捆綁銷售設(shè)計、商品促銷和商品貨架分布等,從而提高利潤。知識儲備關(guān)聯(lián)規(guī)則的基本概念1.項集:I={牛奶,面包,尿布,啤酒,雞蛋,可樂}2.頻數(shù):一個項集X在數(shù)據(jù)庫D中出現(xiàn)的次數(shù)為頻數(shù)。

例如,X={牛奶,面包},則count(X)=3.3.支持度:在一個交易數(shù)據(jù)庫D中,用支持度衡量一個項集X出現(xiàn)頻率的大小,記為support(X)。support(X)=count(X)/|??|×100%。|??|為該數(shù)據(jù)庫所包含交易數(shù)據(jù)條數(shù)。例如,X={牛奶,面包},則support(X)=60%.4.置信度:項集X發(fā)生的情況下,則項集Y發(fā)生的概率為關(guān)聯(lián)規(guī)則的置信度,記為confidence(X→Y)。confidence(X→Y)=support(X→Y)/support(X)。例如,X={牛奶,面包},Y={啤酒},則confidence(X→Y)=1/3=33.3%。5.頻繁項集:項集X的支持度如果大于用戶給定的最小支持度閾值,則X被稱為頻繁項集。TIDItemsT1

牛奶,面包T2面包,尿布,啤酒,雞蛋T3牛奶,尿布,啤酒,可樂T4面包,牛奶,尿布,啤酒T5面包,牛奶,尿布,可樂知識儲備關(guān)聯(lián)規(guī)則挖掘關(guān)聯(lián)規(guī)則挖掘的主要任務(wù):找出滿足最小支持度和最小置信度的頻繁項集。

例如,給定minsup=40%和minconf=60%,則{啤酒}→{尿布}為頻繁項集,sup({啤酒,尿布})=60%,conf({啤酒,尿布})=100%。目前常見的關(guān)聯(lián)規(guī)則算法AprioriFP-Growth知識儲備Apriori算法逐層發(fā)現(xiàn)算法(Apriori)的主要思想是找出存在于事務(wù)數(shù)據(jù)集中的最大的頻繁項集,再利用得到的最大頻繁項集與預(yù)先設(shè)定的最小置信度閾值生成強(qiáng)關(guān)聯(lián)規(guī)則。知識儲備使用Apriori算法實現(xiàn)餐飲菜品關(guān)聯(lián)分析結(jié)合餐飲行業(yè)的實例講解Apriori關(guān)聯(lián)規(guī)則算法挖掘的實現(xiàn)過程。數(shù)據(jù)庫中部分點餐數(shù)據(jù)如表所示。序列時間訂單號菜品id菜品名稱12014/8/2110118491健康麥香包22014/8/211018693香煎蔥油餅32014/8/211018705翡翠蒸香茜餃42014/8/211028842菜心粒咸骨粥52014/8/211027794養(yǎng)顏紅棗糕62014/8/211038842金絲燕麥包72014/8/211038693三絲炒河粉…………………………知識儲備使用Apriori算法實現(xiàn)餐飲菜品關(guān)聯(lián)分析首先將上表中的事務(wù)數(shù)據(jù)(一種特殊類型的記錄數(shù)據(jù))整理成關(guān)聯(lián)規(guī)則模型所需的數(shù)據(jù)結(jié)構(gòu),從中抽取10個點餐訂單作為事務(wù)數(shù)據(jù)集,設(shè)支持度為0.2(支持度計數(shù)為2),為方便起見將菜品{18491,8842,8693,7794,8705}分別簡記為

,如表所示。訂單號原菜品id轉(zhuǎn)換后菜品id118491,8693,870528842,779438842,8693418491,8842,8693,7794518491,884268842,8693718491,8842818491,8842,8693,8705918491,8842,86931018491,8693,8705知識儲備使用Apriori算法實現(xiàn)餐飲菜品關(guān)聯(lián)分析算法過程如圖所示。知識儲備使用Apriori算法實現(xiàn)餐飲菜品關(guān)聯(lián)分析(1)過程一:找最大k項頻繁項集算法簡單掃描所有的事務(wù),事務(wù)中的每一項都是候選1項集的集合

的成員,計算每一項的支持度。如

中各項集的支持度與預(yù)先設(shè)定的最小支持度閾值作比較,保留大于或等于該閾值的項,得1項頻繁項集

知識儲備使用Apriori算法實現(xiàn)餐飲菜品關(guān)聯(lián)分析掃面所有事務(wù),

連接得候選2項集

,并計算每一項的支持度。如

接著是剪枝步,由于

的每個子集(即

)都是頻繁項集,所以沒有項集從

中剔除。對

中各項集的支持度與預(yù)先設(shè)定的最小支持度閾值作比較,保留大于或等于該閾值的項,得2項頻繁項集

知識儲備使用Apriori算法實現(xiàn)餐飲菜品關(guān)聯(lián)分析掃描所有事務(wù),

連接得候選3項集

,并計算每一項的支持度,如

接著是剪枝步,

連接的所有項集為

根據(jù)Apriori算法,頻繁項集的所有非空子集也必須是頻繁項集,因為

不包含在2項頻繁項集

中,即不是頻繁項集,應(yīng)剔除,最后的

中的項集只有和知識儲備使用Apriori算法實現(xiàn)餐飲菜品關(guān)聯(lián)分析對

中各項集的支持度與預(yù)先設(shè)定的最小支持度閾值作比較,保留大于或等于該閾值的項,得3項頻繁項集

連接得候選4項集

,剪枝后得到的項集為空集。因此最后得到最大3項頻繁項集

。由以上過程可知

都是頻繁項集,

是最大頻繁項集。知識儲備使用Apriori算法實現(xiàn)餐飲菜品關(guān)聯(lián)分析(2)過程二:由頻繁集產(chǎn)生關(guān)聯(lián)規(guī)則嘗試基于該例產(chǎn)生關(guān)聯(lián)規(guī)則,在Python中實現(xiàn)上述Apriori算法的代碼,

結(jié)果如右圖所示。針對右圖中第一條輸出結(jié)果進(jìn)行解釋:客戶同時點菜品e和a的概率是30%,點了菜品e,再點菜品a的概率是100%。知道了這些,就可以對顧客進(jìn)行智能推薦,增加銷量的同時滿足客戶需求。結(jié)果為:supportconfidencee---a0.31.000000e---c0.31.000000c---e---a0.31.000000a---e---c0.31.000000c---a0.50.714286a---c0.50.714286a---b0.50.714286c---b0.50.714286b---a0.50.625000b---c0.50.625000a---c---e0.30.600000b---c---a0.30.600000a---c---b0.30.600000a---b---c0.30.600000知識儲備FP-GrowthFP-Growth算法不同于Apriori算法生成候選項集再檢查是否頻繁的“產(chǎn)生-測試”方法,而是使用一種稱為頻繁模式樹(FP-Tree,F(xiàn)P代表頻繁模式,F(xiàn)requentPattern)的菜單緊湊數(shù)據(jù)結(jié)構(gòu)組織數(shù)據(jù),并直接從該結(jié)構(gòu)中提取頻繁項集。相比于Apriori對每個潛在的頻繁項集都需要掃描數(shù)據(jù)集判定是否滿足支持度,F(xiàn)P-Growth算法只需要遍歷兩次數(shù)據(jù)集,因此它在大數(shù)據(jù)集上的速度顯著優(yōu)于Apriori。知識儲備FP-GrowthFP-Growth算法的基本步驟掃描數(shù)據(jù),得到所有1項頻繁一項集的計數(shù)。然后刪除支持度低于閾值的項,將1項頻繁項集放入項頭表,并按照支持度降序排列。讀入排序后的數(shù)據(jù)集,插入FP樹,插入時將項集按照排序后的順序,插入FP樹中,排序靠前的節(jié)點是祖先節(jié)點,而靠后的是子孫節(jié)點。如果有共用的祖先,則對應(yīng)的公用祖先節(jié)點計數(shù)加1。插入后,如果有新節(jié)點出現(xiàn),則項頭表對應(yīng)的節(jié)點會通過節(jié)點鏈表連接新節(jié)點。直到所有的數(shù)據(jù)都插入到FP樹后,F(xiàn)P樹的建立完成。知識儲備FP-GrowthFP-Growth算法的基本步驟從項頭表的底部項依次向上找到項頭表項對應(yīng)的條件模式基。從條件模式基遞歸挖掘得到項頭表項的頻繁項集。如果不限制頻繁項集的項數(shù),則返回步驟3所有的頻繁項集,否則只返回滿足項數(shù)要求的頻繁項集。知識儲備FP-Growth2.FP-Growth算法原理FP-Growth算法主要包含3個部分:掃描數(shù)據(jù)集建立項頭表、基于項頭表建立FP-tree和基于FP-tree挖掘頻繁項集。(1)建立項頭表要建立FP-tree首先需要建立項頭表,建立項頭表需要先對數(shù)據(jù)集進(jìn)行一次掃描,得到所有1項頻繁一項集的計數(shù),將低于設(shè)定的支持度閾值的項過濾掉后,將1項頻繁集放入項頭表并按照項集的支持度進(jìn)行降序排序。之后對數(shù)據(jù)集進(jìn)行第二次掃描,從原始數(shù)據(jù)中剔除1項非頻繁項集,并按照項集的支持度降序排序。知識儲備FP-Growth以一個含有10條數(shù)據(jù)的數(shù)據(jù)集為例,數(shù)據(jù)集中的數(shù)據(jù)如表所示。序號數(shù)據(jù)1A,B,C,E,F(xiàn),H2A,C,G3E,I4A,C,D,E,G5A,D,E,L6E,J7A,B,C,E,F(xiàn),P8A,C,D9A,C,E,G,M10A,C,E,G,K知識儲備FP-Growth對數(shù)據(jù)集進(jìn)行掃描,支持度閾值設(shè)為20%,由于H,I,L,J,K,P,M都僅出現(xiàn)一次,小于設(shè)定的20%的支持度閾值,因此將不進(jìn)入項頭表。將1項頻繁項集按降序排序后構(gòu)建的項頭表如表所示。頻繁項計數(shù)A8E8C7G4D3B2F2知識儲備FP-Growth第二次掃描數(shù)據(jù),將每條數(shù)據(jù)中的1項非頻繁項集刪去,并按照項集的支持度降序排列。如數(shù)據(jù)項“A,B,C,E,F(xiàn),H”,其中“H“為1項非頻繁項集,剔除后按項集的支持度降序排列后的數(shù)據(jù)項為“A,E,C,B,F(xiàn)”,得到排序后的數(shù)據(jù)集如表所示。序號數(shù)據(jù)1A,E,C,B,F(xiàn)2A,C,G3E4A,E,C,G,D5A,E,D6E7A,E,C,B,F(xiàn)8A,C,D9A,E,C,G10A,E,C,G知識儲備FP-Growth(2)建立FP-tree構(gòu)建項頭表并對數(shù)據(jù)集排序后,就可以開始建立FP-tree。建立FP-tree時按順序讀入排序后的數(shù)據(jù)集,插入FP-tree中時按照排序的順序插入,排序最為靠前的是父節(jié)點,之后的是子孫節(jié)點。如果出現(xiàn)共同的父節(jié)點,則對應(yīng)父節(jié)點的計數(shù)增加1次。插入時如果有新節(jié)點加入樹中,則將項頭表中對應(yīng)的節(jié)點通過節(jié)點鏈表鏈接接上新節(jié)點。直至所有的數(shù)據(jù)項都插入FP-tree后,F(xiàn)P-tree完成建立過程。知識儲備FP-Growth以建立項頭表的數(shù)據(jù)集為例,構(gòu)建FP-tree的過程如圖所示。知識儲備FP-Growth最終得到的FP-tree如圖所示。知識儲備FP-Growth(3)挖掘頻繁項集在構(gòu)建FP-tree、項頭表和節(jié)點鏈表后,需要從項頭表的底部項依次向上挖掘頻繁項集。這需要找到項頭表中對應(yīng)于FP-tree的每一項的條件模式基。條件模式基是以要挖掘的節(jié)點作為葉子節(jié)點所對應(yīng)的FP子樹。得到該FP子樹后,將子樹中每個節(jié)點的計數(shù)設(shè)置為葉子節(jié)點的計數(shù),并刪除計數(shù)低于最小支持度的節(jié)點。基于這個條件模式基就可以遞歸挖掘得到頻繁項集了。知識儲備FP-Growth以構(gòu)建F節(jié)點的條件模式基為例,F(xiàn)節(jié)點在FP-tree中只有一個子節(jié)點,因此只有一條路徑{A:8,E:6,C:5,B:2,F:2},得到F節(jié)點的FP子樹如圖所示。知識儲備FP-Growth接著將所有的父節(jié)點的計數(shù)設(shè)置為子節(jié)點的計數(shù),即FP子樹變成{A:2,E:2,C:2,B:2,F:2}。通常條件模式基可以不寫子節(jié)點,如圖所示。通過F節(jié)點的條件模式基可以得到F的頻繁2項集為{A:2,F:2}、{E:2,F:2}、{C:2,F:2}、{B:2,F:2}。將2項集遞歸合并得到頻繁3項集為{A:2,C:2,F:2}、{A:2,E:2,F:2}等等。最終遞歸得到最大的頻繁項集為頻繁5項集{A:2,E:2,C:2,B:2,F:2}。第三方工具庫項目中需要安裝的第三方工具庫如下:basemap:數(shù)據(jù)地圖的可視化工具庫geopy:地址編碼工具庫apyori:Apriori算法庫pyfpgrowth:FP-Growth算法庫第三方工具庫安裝basemap的步驟如下:在命令提示行輸入condainstallbasemap,如果安裝失敗,可采用如下1-4步完成。1、下載.whl文件:(1)pyproj-3.0.1-cp36-cp36m-win_amd64.whl(2)basemap-1.2.2-cp36-cp36m-win_amd64.whl注,這兩個文件均可在/~gohlke/pythonlibs/找到,需要特別注意的是版本號一定要對應(yīng)(比如多少位機(jī)器,什么版本的python)2、將下載好的.whl文件放在某個目錄下,如python的安裝目錄Scripts;第三方工具庫3、打開AnacondaPrompt,進(jìn)入.whl文件所在的目錄下,輸入pipinstallXXX安裝:4、測試是否安裝成功:frommpl_toolkits.basemapimportBasemapimportmatplotlib.pyplotasplt第三方工具庫安裝geopy

、apyori和pyfpgrowth的步驟如下:

geopy:在命令提示行輸入pipinstallgeopyapyori:在命令提示行輸入pipinstallapyori

pyfpgrowth:在命令提示行輸入pipinstallpyfpgrowth

項目分析報告騎行數(shù)據(jù)探索性分析租賃點數(shù)量自行車數(shù)量租賃次數(shù)租賃時長平均站點距離633個10422輛5.37次/天17.53分鐘5393米表1騎行基本信息工作日頻率最高的三個騎行始末站(432,3263),(2006,2006),(281,281)周末頻率最高的三個騎行始末站(3182,3182),(3182,3254),(3254,3182)流入量最高的三個站W(wǎng)estSt&ChambersSt,PershingSquareNorth,12Ave&W40St流出量最高的三個站PershingSquare,NorthWestSt&ChambersSt,12Ave&W40St流量最高的站Pershi

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論