《大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)》課件 項(xiàng)目七模塊二 市場(chǎng)數(shù)據(jù)建模與可視化_第1頁(yè)
《大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)》課件 項(xiàng)目七模塊二 市場(chǎng)數(shù)據(jù)建模與可視化_第2頁(yè)
《大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)》課件 項(xiàng)目七模塊二 市場(chǎng)數(shù)據(jù)建模與可視化_第3頁(yè)
《大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)》課件 項(xiàng)目七模塊二 市場(chǎng)數(shù)據(jù)建模與可視化_第4頁(yè)
《大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)》課件 項(xiàng)目七模塊二 市場(chǎng)數(shù)據(jù)建模與可視化_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

項(xiàng)目七市場(chǎng)分析工程實(shí)踐案例《大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)》模塊二

市場(chǎng)數(shù)據(jù)建模與可視化核心目標(biāo)職業(yè)能力1.運(yùn)用網(wǎng)絡(luò)爬蟲(chóng)采集數(shù)據(jù),并對(duì)臟數(shù)據(jù)進(jìn)行清洗;2.能對(duì)數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析與可視化分析;3.了解相關(guān)模型的建立與求解;4.獨(dú)立完成數(shù)據(jù)分析報(bào)告。職業(yè)素養(yǎng)1.養(yǎng)成敏銳洞察數(shù)據(jù)與處理數(shù)據(jù)的能力;2.養(yǎng)成數(shù)據(jù)分析思維,用數(shù)據(jù)客觀看待市場(chǎng),把握市場(chǎng)方向。知識(shí)圖譜項(xiàng)目背景小張平時(shí)喜歡飲茶,經(jīng)常聯(lián)想到目前的茶葉市場(chǎng)規(guī)模,經(jīng)過(guò)Python的初步學(xué)習(xí)后,計(jì)劃做一期市場(chǎng)分析為自己解惑,于是在市場(chǎng)中選取了上市茶企業(yè)A公司作為研究對(duì)象,對(duì)相關(guān)數(shù)據(jù)進(jìn)行采集、分析與建模,通過(guò)所學(xué)知識(shí)對(duì)市場(chǎng)現(xiàn)狀進(jìn)行分析并對(duì)市場(chǎng)前景進(jìn)行合理預(yù)測(cè)。01統(tǒng)計(jì)分析03數(shù)據(jù)可視化02數(shù)據(jù)建模問(wèn)題引入小張將采集的樣本數(shù)據(jù)進(jìn)行清洗后,還想對(duì)茶葉的銷量變化進(jìn)行研究,于是從企業(yè)每年在銷售上的投入著手,研究銷量是如何被企業(yè)策略所影響,再通過(guò)數(shù)據(jù)可視化的方式直觀描述成本、收入等指標(biāo)的關(guān)系,進(jìn)一步了解市場(chǎng)情況。認(rèn)知實(shí)踐pandas模塊為用戶提供了非常多的描述性統(tǒng)計(jì)分析的指標(biāo)函數(shù),如總和、均值、最小值、最大值等,通過(guò)下表具體認(rèn)識(shí)這些函數(shù):一、pandas庫(kù)常用統(tǒng)計(jì)分析函數(shù)方法說(shuō)明.count()非空元素?cái)?shù)量計(jì)算.min()最小值.max()最大值.idxmin()最小值的位置.idxmax()最大值的位置.quantile(0.1)10%分位數(shù).sum()求和.mean()均值.median()中位數(shù).mode()眾數(shù).var()方差.std()標(biāo)準(zhǔn)差.mad()平均絕對(duì)偏差.skew()偏度.kurt()峰度.describe()一次性輸出多個(gè)描述性統(tǒng)計(jì)指標(biāo)表7-1統(tǒng)計(jì)分析函數(shù)認(rèn)知實(shí)踐seaborn是基于matplotlib的數(shù)據(jù)集分布可視化庫(kù),在matplotlib的基礎(chǔ)上進(jìn)行了更高級(jí)的封裝,從而使得繪圖更加容易,不需要經(jīng)過(guò)大量的調(diào)整,就能使圖像變得精致,同時(shí)還能能高度兼容numpy與pandas數(shù)據(jù)結(jié)構(gòu)以及scipy與statsmodels等統(tǒng)計(jì)模式。二、Seaborn庫(kù)代碼importnumpyasnpimportpandasaspdimportseabornassnsimportmatplotlib.pyplotaspltfromscipyimportstats,integrate認(rèn)知實(shí)踐seaborn多數(shù)圖表具有統(tǒng)計(jì)學(xué)含義,例如分布、關(guān)系、統(tǒng)計(jì)、回歸等,繪圖接口也更加集成,可以通過(guò)少量的參數(shù)設(shè)置實(shí)現(xiàn)大量封裝繪圖,常用參數(shù)如下:二、Seaborn庫(kù)參數(shù)說(shuō)明x,y,hue數(shù)據(jù)集變量(變量名)data數(shù)據(jù)集row,col更多分類變量進(jìn)行平鋪顯示(變量名)col_wrap每行的最高平鋪數(shù)estimator在每個(gè)分類中進(jìn)行矢量到標(biāo)量的映射ci置信區(qū)間n_boot計(jì)算置信區(qū)間時(shí)使用的引導(dǎo)迭代次數(shù)units采樣單元的標(biāo)識(shí)符,用于執(zhí)行多級(jí)引導(dǎo)和重復(fù)測(cè)量設(shè)計(jì)Order,row_order對(duì)應(yīng)排序列表hue_order,col_order字符串列表kind圖像類型,其中point為默認(rèn),bar為柱形圖,count為頻次,box為箱線圖,violin為提琴圖,strip為散點(diǎn)圖,swarm為分散點(diǎn)size每個(gè)面的高度aspect縱橫比orient方向color顏色palette調(diào)色板legend是否展示hue的信息面板legend_out是否擴(kuò)展圖形,并將信息框繪制在中心右邊share{x,y}是否共享軸線表7-2seaborn相關(guān)參數(shù)認(rèn)知實(shí)踐研究的線性函數(shù)只包含一個(gè)自變量和一個(gè)因變量,且二者的關(guān)系可以用一條直線刻畫(huà)時(shí),這種回歸就是一元線性回歸,可以用著名的最小二乘法來(lái)求解,主要思想就是選擇未知參數(shù),使得理論值與觀測(cè)值之差的平方和達(dá)到最小。三、一元線性回歸擬合如圖7-9所示:最小二乘法就是試圖尋找一條直線,求出模型中未知參數(shù),使得樣本點(diǎn)和擬合線的總誤差最小,這個(gè)誤差(距離)可以直接相減,但是直接相減會(huì)有正有負(fù),相互抵消了,所以就用差的平方來(lái)表示。圖7-9最小二乘法圖解統(tǒng)計(jì)分析01一、統(tǒng)計(jì)分析對(duì)經(jīng)過(guò)清洗的數(shù)據(jù)做統(tǒng)計(jì)分析,并將結(jié)果輸出為數(shù)據(jù)集。importpandasaspd#導(dǎo)入數(shù)據(jù)df_final=pd.read_csv('C:/下載/財(cái)務(wù)數(shù)據(jù).csv',index_col=0)df_cost=pd.read_csv('C:/下載/成本數(shù)據(jù).csv',index_col=0)#定義函數(shù),輸入數(shù)據(jù)集即可輸出統(tǒng)計(jì)分析結(jié)果defstatus(x):returnpd.DataFrame([x.count(),x.min(),x.idxmin(),x.quantile(.25),x.median(),x.quantile(.75),x.mean(),x.max(),x.idxmax(),x.mad(),x.var(),x.std(),x.skew(),x.kurt()],index=['總數(shù)','最小值','最小值位置','25%分位數(shù)','中位數(shù)','75%分位數(shù)','均值','最大值','最大值位數(shù)','平均絕對(duì)偏差','方差','標(biāo)準(zhǔn)差','偏度','峰度'])#輸出不同數(shù)據(jù)集統(tǒng)計(jì)分析結(jié)果des_final=status(df_final)des_cost=status(df_cost.T)print(des_final)print(des_cost)代碼7-2-1一、統(tǒng)計(jì)分析輸出結(jié)果(如圖7-10、7-11所示)圖7-10財(cái)務(wù)數(shù)據(jù)統(tǒng)計(jì)分析結(jié)果圖7-11成本數(shù)據(jù)統(tǒng)計(jì)分析結(jié)果說(shuō)明:輸出結(jié)果為數(shù)據(jù)集,為了方便展示將數(shù)據(jù)保存進(jìn)本地生成圖片展示,可以較直觀觀察統(tǒng)計(jì)分析結(jié)果。數(shù)據(jù)建模02二、數(shù)據(jù)建模要研究銷售費(fèi)用對(duì)銷量的影響,即兩種變量間相互依賴的定量關(guān)系,可以選擇一元線性回歸模型,在建模過(guò)程中必須同時(shí)具備自變量和因變量。對(duì)此,將銷量數(shù)據(jù)作為因變量y,銷售費(fèi)用則作為自變量x進(jìn)行建模。將所需數(shù)據(jù)從已清洗的數(shù)據(jù)集中取出,同時(shí)將銷售費(fèi)用單位轉(zhuǎn)化為萬(wàn)元,得到新的數(shù)據(jù)集。(一)模型確定與數(shù)據(jù)選取代碼7-2-2importpandasaspd#導(dǎo)入數(shù)據(jù)集df_final=pd.read_csv('C:/下載/財(cái)務(wù)數(shù)據(jù).csv',index_col=0)#根據(jù)列名提取數(shù)據(jù)賦予新數(shù)據(jù)集data_regress=df_final[['銷售費(fèi)用(元)','銷量(噸)']]#單位轉(zhuǎn)換data_regress['銷售費(fèi)用(元)']=data_regress['銷售費(fèi)用(元)']/10000data_regress=data_regress.rename(columns={'銷售費(fèi)用(元)':'銷售費(fèi)用(萬(wàn)元)'})二、數(shù)據(jù)建模一元線性回歸模型也被稱為簡(jiǎn)單線性回歸模型,模型中只含有一個(gè)自變量和一個(gè)因變量,數(shù)學(xué)公式如下:(二)模型建立a為模型的截距項(xiàng)b為模型的斜率項(xiàng)ε為模型的誤差項(xiàng)a和b統(tǒng)稱為回歸系數(shù),誤差項(xiàng)的存在主要是為了平衡等號(hào)兩邊的值,通常被稱為模型無(wú)法解釋的部分。

二、數(shù)據(jù)建模#導(dǎo)包importmatplotlib.pyplotaspltimportseabornassns#設(shè)置字體樣式plt.rcParams['font.family']=['ArialUnicodeMS','MicrosoftYahei','SimHei','sans-serif']#解決matplotlib無(wú)法顯示中文和負(fù)號(hào)的問(wèn)題plt.rcParams['axes.unicode_minus']=False#指定數(shù)據(jù)集繪制回歸圖像,置信區(qū)間為0.95,縱橫比1.5,參數(shù)可調(diào)整sns.lmplot(x='銷售費(fèi)用(萬(wàn)元)',y='銷量(噸)',data=data_regress,ci=0.95,aspect=1.5)#圖像展示plt.show()(二)模型建立通過(guò)Seaborn,畫(huà)出樣本對(duì)應(yīng)散點(diǎn)并繪制一元線性擬合圖像,代碼如下。代碼續(xù)7-2-2二、數(shù)據(jù)建模(二)模型建立圖7-12線性回歸圖像圓點(diǎn)代表樣本數(shù)據(jù),斜線是關(guān)于散點(diǎn)的線性回歸擬合線。如果擬合線能夠精確地捕捉到每一個(gè)點(diǎn)(即所有散點(diǎn)全部落在擬合線上),對(duì)應(yīng)的誤差項(xiàng)應(yīng)該為0。模型擬合的越好,誤差項(xiàng)相應(yīng)地應(yīng)該越小,進(jìn)而可以理解為:求解參數(shù)便是求解誤差平方和最小的問(wèn)題(誤差項(xiàng)可能為負(fù))。輸出結(jié)果(如圖7-12所示)二、數(shù)據(jù)建模(三)模型求解將模型的數(shù)學(xué)公式進(jìn)行移項(xiàng)后計(jì)算,得到誤差平方和公式為:要使誤差即改目標(biāo)函數(shù)最小,最終可以得到參數(shù)解:二、數(shù)據(jù)建模(三)模型求解利用Python將數(shù)據(jù)集代入,得到最終結(jié)果,解出參數(shù)值。#點(diǎn)數(shù)n=data_regress.shape[0]#銷售費(fèi)用求和sum_x=data_regress['銷售費(fèi)用(萬(wàn)元)'].sum()#銷量求和sum_y=data_regress['銷量(噸)'].sum()#銷售費(fèi)用平方和sum_x2=data_regress['銷售費(fèi)用(萬(wàn)元)'].pow(2).sum()#銷售費(fèi)用與銷量乘積xy=data_regress['銷售費(fèi)用(萬(wàn)元)']*data_regress['銷量(噸)']#銷售費(fèi)用與銷量乘積再求和sum_xy=xy.sum()#根據(jù)公式計(jì)算參數(shù)b=(n*sum_xy-sum_x*sum_y)/(n*sum_x2-sum_x**2)a=data_regress['銷量(噸)'].mean()-b*data_regress['銷售費(fèi)用(萬(wàn)元)'].mean()#輸出結(jié)果print('截距a的值為:',a)print('斜率b的值為:',b)代碼續(xù)7-2-2二、數(shù)據(jù)建模(三)模型求解利用Python將數(shù)據(jù)集代入,得到最終結(jié)果,解出參數(shù)值。輸出結(jié)果截距a的值為:522.6140828346515斜率b的值為:2.0875149826444677數(shù)據(jù)可視化03三、數(shù)據(jù)可視化(一)財(cái)務(wù)指標(biāo)分析繪制組合圖對(duì)比企業(yè)的收入與利潤(rùn)和成本的關(guān)系,見(jiàn)代碼7-2-3。三、數(shù)據(jù)可視化(一)財(cái)務(wù)指標(biāo)分析輸出結(jié)果(如圖7-13所示)圖7-13組合圖左圖是總成本的柱狀圖與總收入的折線圖組成的組合圖右邊為總成本的柱狀圖和利潤(rùn)額折線圖組成的組合圖三、數(shù)據(jù)可視化(二)成本數(shù)據(jù)分析從數(shù)據(jù)可以直觀看出,在營(yíng)業(yè)總成本中,營(yíng)業(yè)成本占了大部分,將其剔除后,通過(guò)繪制餅圖探究每一年其他成本的占比。代碼續(xù)7-2-3#定義繪制餅圖的函數(shù),以便多次使用時(shí)調(diào)用,避免代碼重復(fù)編寫(xiě)defdraw_pie(x):labels=[str(i)foriinnp.array(x.index)]sizes=[iforiinnp.array(x)]plt.pie(sizes,labels=labels,autopct='%1.2f%%',shadow=True)#提取要繪制圖像的數(shù)據(jù)df_pie=df_cost.iloc[list(range(1,7))]#構(gòu)建畫(huà)布plt.figure(figsize=(16,10))#調(diào)用定義的函數(shù),畫(huà)布劃分為2行3列,在指定位置繪圖plt.subplot(231)draw_pie(df_pie['2018年'])plt.title('2018年其他成本費(fèi)用占比',fontsize=15)plt.subplot(232)draw_pie(df_pie['2019年'])plt.title('2019年其他成本費(fèi)用占比',fontsize=15)plt.subplot(233)draw_pie(df_pie['2020年'])plt.title('2020年其他成本費(fèi)用占比',fontsize=15)plt.subplot(234)draw_pie(df_pie['2021年'])plt.title('2021年其他成本費(fèi)用占比',fontsize=15)plt.subplot(235)draw_pie(df_pie['2022年'])plt.title('2022年其他成本費(fèi)用占比',fontsize=15)#展示plt.sh

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論