資源簡介 第五章 數(shù)據(jù)處理和可視化表達(dá)網(wǎng)絡(luò)購物平臺客戶行為數(shù)據(jù)分析報(bào)告—— 以網(wǎng)絡(luò)購物平臺零食銷售數(shù)據(jù)分析為例一、引言隨著移動互聯(lián)網(wǎng)和物聯(lián)網(wǎng)的飛速發(fā)展,人類社會產(chǎn)生的數(shù)據(jù)以驚人的 速度增長。海量的數(shù)據(jù)幾乎包含一切形式的結(jié)構(gòu)化、半結(jié)構(gòu)化以及非結(jié)構(gòu) 化的數(shù)據(jù),如網(wǎng)絡(luò)日志、音頻、視頻、圖片、地理位置信息等。如何高效 地對這些數(shù)據(jù)進(jìn)行采集、存儲、處理,并從中發(fā)掘到有價(jià)值的信息,是大 數(shù)據(jù)分析處理需要解決的問題。二、分析目的在日常工作,生活和學(xué)習(xí)中,大數(shù)據(jù)已成為人們提取信息、做出決策 的重要依據(jù)。大數(shù)據(jù)分析,使得商家可以通過分析網(wǎng)絡(luò)購物平臺客戶的行 為數(shù)據(jù),如客戶購物訂單中包含的商品,客戶的購物行為特征、消費(fèi)特征 等數(shù)據(jù),為商品的區(qū)域擺放、捆綁銷售等決策提供依據(jù),甚至根據(jù)客戶的 購物喜好,為客戶提供個(gè)性化需求或服務(wù),以提升市場的占有率。通過完成“網(wǎng)絡(luò)購物平臺客戶行為數(shù)據(jù)分析和可視化表達(dá)”項(xiàng)目,認(rèn) 識大數(shù)據(jù)及其特征,認(rèn)識大數(shù)據(jù)對人們?nèi)粘I畹挠绊懀私鈹?shù)據(jù)采集、 分析和可視化表達(dá)的基本方法;學(xué)會選用恰當(dāng)?shù)能浖ぞ呋蚱脚_處理數(shù) 據(jù),完成分析報(bào)告;理解對數(shù)據(jù)進(jìn)行保護(hù)的意義。三、數(shù)據(jù)需求1.零食銷售數(shù)據(jù)包括零食名稱(title)、店鋪名稱(store)、零食價(jià)格(price)、零食 訂單量(paynum)等數(shù)據(jù)。· 1 ·2.客戶訂單數(shù)據(jù)包括客戶訂單中商品名稱等數(shù)據(jù)。3.客戶消費(fèi)特征數(shù)據(jù)包括客戶年齡、平均每次消費(fèi)金額、平均消費(fèi)周期(天)等數(shù)據(jù)。 4.客戶購物行為特征數(shù)據(jù)包括客戶身高、體重、年齡以及客戶屬性等數(shù)據(jù)。四、數(shù)據(jù)采集1.確定數(shù)據(jù)來源項(xiàng)目所需的零食銷售數(shù)據(jù)、客戶訂單數(shù)據(jù)、客戶消費(fèi)特征數(shù)據(jù)、客戶 購物行為特征數(shù)據(jù)等,來源于網(wǎng)絡(luò)購物平臺。2.?dāng)?shù)據(jù)的采集通過網(wǎng)絡(luò)數(shù)據(jù)采集法,利用Python爬蟲程序等工具從網(wǎng)絡(luò)購物平臺采集 零食銷售數(shù)據(jù)、客戶訂單數(shù)據(jù)、客戶消費(fèi)特征數(shù)據(jù)以及客戶購物行為特征 數(shù)據(jù)。爬蟲程序采集零食銷售數(shù)據(jù)關(guān)鍵代碼如下所示。·2 ·爬蟲程序運(yùn)行關(guān)鍵過程如下。(請輸入要搜索的商品名稱:零食請輸入想要搜索的商品頁數(shù):100爬取到3036條商品數(shù)據(jù)寫入excel表格成功!)爬蟲程序采集零食銷售數(shù)據(jù)如圖5-1所示。圖 5-1 采集零食銷售數(shù)據(jù)3.?dāng)?shù)據(jù)的保存管理項(xiàng)目數(shù)據(jù)都來自網(wǎng)絡(luò)購物平臺的非隱私數(shù)據(jù),可以保存在本地電腦或 數(shù)據(jù)庫中,以便數(shù)據(jù)分析時(shí)使用,還可以通過云盤等方式把數(shù)據(jù)分享給小 組成員或他人,實(shí)現(xiàn)數(shù)據(jù)共享。五、數(shù)據(jù)分析和可視化表達(dá)1.?dāng)?shù)據(jù)分析數(shù)據(jù)分析一般包括特征探索、關(guān)聯(lián)分析、聚類與分類、建立模型和模·3 ·型評價(jià)等。(1)特征探索。大數(shù)據(jù)特征探索的主要任務(wù)是對數(shù)據(jù)進(jìn)行預(yù)處理,發(fā) 現(xiàn)和處理缺失值、異常數(shù)據(jù),繪制直方圖,觀察分析數(shù)據(jù)的分布特征,求 最大值、最小值、極差等描述性統(tǒng)計(jì)量。零食銷售數(shù)據(jù)特征探索過程如下。①使用XAMPP建站集成軟件創(chuàng)建零食銷售數(shù)據(jù)數(shù)據(jù)庫datas,數(shù)據(jù)如圖 5-2所示。圖 5-2 使用 XAMPP 建站集成軟件創(chuàng)建零食銷售數(shù)據(jù)庫 datas②運(yùn)行“程序5-4-2 商品銷售數(shù)據(jù)特征探索.py”,連接數(shù)據(jù)庫程序代 碼如下所示。(conn=pymysql.connect(host="127.0.0.1",user="root",passwd="",db="datas")sql="select*fromdatas"data=pda.read_sql(sql,conn))③程序運(yùn)行過程中依次生成數(shù)據(jù)清洗前的散點(diǎn)圖,異常數(shù)據(jù)處理后的 散點(diǎn)圖,價(jià)格直方圖、銷量直方圖,如圖5-3所示。·4 ·圖 5-3 運(yùn)行結(jié)果特征探索的結(jié)果:從散點(diǎn)圖中可以看到,經(jīng)過異常數(shù)據(jù)處理后的散點(diǎn) 圖數(shù)據(jù)分布比較均勻;從價(jià)格直方圖可以看到,價(jià)格區(qū)間在8~24的零食種 類比較多;從銷量直方圖可以看到,銷量在2000的零食種類占比大。(2)關(guān)聯(lián)分析。關(guān)聯(lián)分析就是分析并發(fā)現(xiàn)存在于大量數(shù)據(jù)之間的關(guān)聯(lián) 性或相關(guān)性,從而描述一個(gè)事物中某些屬性同時(shí)出現(xiàn)的規(guī)律和模式。客戶訂單中商品關(guān)聯(lián)分析如圖5-4所示, 圖左部分為客戶訂單中包含的 商品名稱,圖右部分為關(guān)聯(lián)分析結(jié)果。圖 5-4 訂單商品名稱和關(guān)聯(lián)分析結(jié)果·5 ·關(guān)聯(lián)分析程序關(guān)鍵代碼如下:(data=pd.read_excel('orders.xls',header=None)#導(dǎo)入文件orders.xls中的數(shù)據(jù)ct=lambdax:pd.Series(1,index=x[pd.notnull(x)])#轉(zhuǎn)換0-1矩陣的過渡函數(shù)b=map(ct, data.as_matrix()) #用map方式執(zhí)行data = pd.DataFrame(list(b)).fillna(0) #實(shí)現(xiàn)矩陣轉(zhuǎn)換,空值用0填充delb #刪除中間變量b,節(jié)省內(nèi)存support = 0.2 #最小支持度confidence= 0.5 #最小置信度ms='---' #連接符,默認(rèn)'--',用來區(qū)分不同元素,如A--B。#需要保證原始表格中不含有該字符find_rule(data, support, confidence, ms).to_excel('apriori_rules.xls')#保存結(jié)果)關(guān)聯(lián)分析結(jié)果:從支持度中可以看到,“面包-牛奶”“牛奶-面包” 支持度較高,說明客戶同時(shí)購買面包和牛奶的概率較大,可以捆綁銷售; 從置信度中可以看到,客戶購買了黃油后,繼續(xù)購買面包和牛奶的概率較 大,可以把黃油、面包和牛奶擺放在一起。(3)聚類分析。聚類分析是一種探索性的分析,在分類的過程中,人 們不必事先給出一個(gè)分類的標(biāo)準(zhǔn),聚類分析能夠從樣本數(shù)據(jù)出發(fā),自動進(jìn) 行分類。客戶消費(fèi)特征數(shù)據(jù)如表5-1所示,聚類分析K-平均算法如圖5-5所示。表 5-1 客戶消費(fèi)特征數(shù)據(jù)表年齡 / 歲 平均每次消費(fèi)金額 / 元 平均消費(fèi)周期 / 天23 317 1022 147 1324 172 17·6 ·(續(xù)表)年齡 / 歲 平均每次消費(fèi)金額 / 元 平均消費(fèi)周期 / 天27 194 6737 789 3525 190 029 281 1027 142 1228 186 823 126 022 287 3232 499 2625 181 9026 172 024 190 1627 271 3140 382 25圖 5-5 聚類分析 K- 平均算法聚類分析程序?qū)肟蛻粝M(fèi)特征數(shù)據(jù)關(guān)鍵代碼如下所示。(fname="company.csv" #導(dǎo)入文件company.cvs中的數(shù)據(jù)dataf=pda.read_csv(fname,encoding="gbk")x=dataf.as_matrix())·7 ·聚類分析結(jié)果如表5-2所示。表 5-2 聚類分析結(jié)果聚類分析 聚類分析結(jié)果年齡-消費(fèi)金額 五邊形點(diǎn)表示消費(fèi)金額最小,為普通用戶;五角星點(diǎn)表示消 費(fèi)額偏高,為高級用戶;正方塊點(diǎn)表示為超級用戶。周期-消費(fèi)金額 五邊形點(diǎn)表示周期不定,消費(fèi)額不高;五角星點(diǎn)表示消費(fèi)額中 等,周期穩(wěn)定;正方塊點(diǎn)表示消費(fèi)額高周期短,屬于超級用戶。年齡-消費(fèi)時(shí)間 里面的點(diǎn)雜亂無章,說明兩者關(guān)系不強(qiáng)。(4)數(shù)據(jù)分類。數(shù)據(jù)分類是大數(shù)據(jù)分析處理中最基本的方法。數(shù)據(jù)分 類通常的做法是,基于樣本數(shù)據(jù)先訓(xùn)練構(gòu)建分類函數(shù)或者分類模型(也稱為分類器),該分類器具有將待分類數(shù)據(jù)項(xiàng)映射到某一特點(diǎn)類別的功能。客戶購物行為特征數(shù)據(jù)分類如表5-3和表5-4所示,表5-3為客戶購物行 為特征數(shù)據(jù)表,表5-4為數(shù)據(jù)分類結(jié)果。表 5-3 客戶購物行為特征數(shù)據(jù)表客戶 特征 A 特征 B 特征 C重要客戶 182.8 81.6 30重要客戶 180.4 86.1 29重要客戶 170.0 77.1 30重要客戶 180.4 74.8 28普通客戶 152.4 45.3 24普通客戶 167.6 68.0 26普通客戶 165.2 58.9 25普通客戶 175.2 68.0 27表 5-4 數(shù)據(jù)分類結(jié)果客戶特征 運(yùn)行結(jié)果 數(shù)據(jù)分類結(jié)果特征A 特征B 特征C [0] 普通用戶182.8 58.9 26·8 ·數(shù)據(jù)分類程序代碼如下所示:import numpy as np from sklearn.naive_bayes import GaussianNB X = np.array([[182.8,81.6,30],[180.4,86.1,29],[170.0,77.1,30],[180.4,74.8,28], [152.4,45.3,24],[167.6,68.0,26],[165.2,58.9,25],[175.2,68.0,27]]) Y = np.array([1,1,1,1,0,0,0,0]) clf = GaussianNB().fit(X, Y) print(clf.predict([[182.8,58.9,26]]))數(shù)據(jù)分類結(jié)果:程序運(yùn)行結(jié)果為0,說明特征值為182.8,58.9,26的客 戶為普通用戶。2.?dāng)?shù)據(jù)可視化表達(dá)數(shù)據(jù)可視化是指以圖形、圖像、地圖、動畫等生動、易于理解的方式 展示數(shù)據(jù)和詮釋數(shù)據(jù)之間的關(guān)系、趨勢與規(guī)律等,以便更好地理解數(shù)據(jù)。 從常用和實(shí)用的維度,大數(shù)據(jù)可視化的呈現(xiàn)類型主要分為探索和解釋兩 種。探索類型可以幫助人們發(fā)現(xiàn)數(shù)據(jù)背后的價(jià)值,而解釋類型則把數(shù)據(jù)簡 單明了地解釋給人們。在數(shù)據(jù)分析處理過程中,使用的數(shù)據(jù)可視化工具,可視化相關(guān)數(shù)據(jù)分 析、呈現(xiàn)類型以及呈現(xiàn)效果如表5-5所示。表 5-5 數(shù)據(jù)分析常用可視化工具可視化工具 可視化數(shù)據(jù) 分析類型 可視化呈現(xiàn) 類型 可視化呈現(xiàn)效果matplotlib 邏輯關(guān)系 散點(diǎn)圖·9 ·(續(xù)表)可視化工具 可視化數(shù)據(jù) 分析類型 可視化呈現(xiàn) 類型 可視化呈現(xiàn)效果matplotlib 邏輯關(guān)系 直方圖WordCloud 邏輯關(guān)系 詞云Seaborn 邏輯關(guān)系 直方圖· 10 ·(續(xù)表)可視化工具 可視化數(shù)據(jù) 分析類型 可視化呈現(xiàn) 類型 可視化呈現(xiàn)效果Bokeh 邏輯關(guān)系 正弦圖六、分析成果1.大數(shù)據(jù)來源廣泛,深刻地影響著人們的日常生活大數(shù)據(jù)的產(chǎn)生是與人類日益普及的網(wǎng)絡(luò)行為所伴生的:物聯(lián)網(wǎng)、云 計(jì)算、移動互聯(lián)網(wǎng)、車聯(lián)網(wǎng)、手機(jī)、電腦以及遍布地球各個(gè)角落的各種 各樣的傳感器,無一不是數(shù)據(jù)的來源或是承載的方式。它們產(chǎn)生的文檔、 照片、視頻、音頻、定位信息、聊天記錄、網(wǎng)購訂單、科學(xué)實(shí)驗(yàn)數(shù)據(jù)等遍 布于世界的每一個(gè)角落。這些結(jié)構(gòu)化、半結(jié)構(gòu)化以及非結(jié)構(gòu)化的數(shù)據(jù),標(biāo) 準(zhǔn)不一,大多數(shù)毫無關(guān)聯(lián),一般以文件或數(shù)據(jù)庫的方式分散存儲在世界各 地,聚集起來就形成了大數(shù)據(jù)。大數(shù)據(jù)已成為人們提取信息、做出決策的重要依據(jù),是推動信息社會 發(fā)展的重要資源。我們在享受大數(shù)據(jù)帶來便利的同時(shí),又要養(yǎng)成保護(hù)數(shù)據(jù) 的習(xí)慣,防止數(shù)據(jù)泄露,特別是隱私數(shù)據(jù)泄露。2.采集與使用大數(shù)據(jù)要合理規(guī)范采集大數(shù)據(jù)首先要規(guī)范采集流程,要先從明確大數(shù)據(jù)應(yīng)用項(xiàng)目的需求 出發(fā),圍繞選定的項(xiàng)目主題,制訂大數(shù)據(jù)采集的需求清單和內(nèi)容大綱,再 到選用合適的方法和工具采集數(shù)據(jù)。采集數(shù)據(jù)要合理合法,充分尊重社會 倫理道德及知識產(chǎn)權(quán)。大數(shù)據(jù)的使用要在數(shù)據(jù)安全的前提下,實(shí)現(xiàn)數(shù)據(jù)共· 11 ·享,創(chuàng)造數(shù)據(jù)價(jià)值,這也正是大數(shù)據(jù)真正的目的。3.Python語言是數(shù)據(jù)采集與分析的高效工具Python語言因其簡潔、易讀、開源、包容等特性,備受青睞。在數(shù)據(jù)采 集時(shí),爬蟲程序能夠讓我們快速高效地獲取網(wǎng)絡(luò)上各種數(shù)據(jù)。在數(shù)據(jù)分析 時(shí)能夠讓我們在雜亂無章的數(shù)據(jù)中,探索數(shù)據(jù)內(nèi)在的結(jié)構(gòu)和規(guī)律,構(gòu)建數(shù) 學(xué)模型,并進(jìn)行可視化呈現(xiàn),從而以易于理解的方式展示數(shù)據(jù)和詮釋數(shù)據(jù) 之間的關(guān)系、趨勢與規(guī)律等,以便我們更好地理解數(shù)據(jù),也為我們做出各 種決策提供依據(jù)。七、結(jié)語在本項(xiàng)目的開展過程中,我們進(jìn)行了自主、協(xié)作、探究學(xué)習(xí),認(rèn)識了 大數(shù)據(jù)及其特征、大數(shù)據(jù)對人們?nèi)粘I畹挠绊懀私鈹?shù)據(jù)采集、分析和 可視化表達(dá)的基本方法;學(xué)會選用恰當(dāng)?shù)能浖ぞ呋蚱脚_處理數(shù)據(jù),完成 分析報(bào)告;理解對數(shù)據(jù)進(jìn)行保護(hù)的意義,從而將知識建構(gòu)、技能培養(yǎng)與思 維發(fā)展融入運(yùn)用數(shù)字化工具解決問題和完成任務(wù)的過程中,促進(jìn)信息技術(shù) 學(xué)科核心素養(yǎng)達(dá)成,達(dá)成項(xiàng)目學(xué)習(xí)目標(biāo)。· 12 · 展開更多...... 收起↑ 資源預(yù)覽 縮略圖、資源來源于二一教育資源庫