版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
油氣大數(shù)據(jù)分析案例11TheCaseofOilandGasBigData11.1油氣消費(fèi)量的影響因素分析石油和天然氣是經(jīng)濟(jì)發(fā)展的重要驅(qū)動(dòng)因素,分析油氣消費(fèi)量的影響因素和影響效果對(duì)政府決策具有重要意義。影響油氣消費(fèi)量的因素較多,本案例選取經(jīng)濟(jì)發(fā)展、經(jīng)濟(jì)結(jié)構(gòu)、科技發(fā)展及人口規(guī)模4種因素,研究其對(duì)油氣消費(fèi)量的影響,從而介紹回歸分析的應(yīng)用方法。其中,油氣消費(fèi)量用符號(hào)OGC表示;經(jīng)濟(jì)發(fā)展使用GDP指標(biāo)量化,用符號(hào)ED表示;經(jīng)濟(jì)結(jié)構(gòu)使用第三產(chǎn)業(yè)產(chǎn)值占GDP比值來(lái)量化,用符號(hào)ES表示;科技發(fā)展通過(guò)研究與試驗(yàn)發(fā)展經(jīng)費(fèi)支出來(lái)量化,用符號(hào)TD表示;人口規(guī)模使用年末總?cè)丝跀?shù)來(lái)量化,用符號(hào)PS表示。1.案例描述11.1油氣消費(fèi)量的影響因素分析2.回歸分析(1)數(shù)據(jù)采集與處理本案例以2001年—2020年全國(guó)數(shù)據(jù)為例,探究各因素對(duì)油氣消費(fèi)量的影響,數(shù)據(jù)來(lái)源于《中國(guó)統(tǒng)計(jì)年鑒》。采集數(shù)據(jù)之后,需要將數(shù)據(jù)文件保存為CSV文件,圖1部分?jǐn)?shù)據(jù)11.1油氣消費(fèi)量的影響因素分析2.回歸分析(2)繪制散點(diǎn)圖觀察變量關(guān)系首先使用pandas庫(kù)讀取數(shù)據(jù),使用前需要提前導(dǎo)入這個(gè)庫(kù)。案例中使用的數(shù)據(jù)文件名是“Oil_and_gas.csv”,然后使用read_csv()函數(shù)讀取數(shù)據(jù)文件中的數(shù)據(jù),并用第一列作為每一行的索引。繪制自變量與目標(biāo)變量之間的散點(diǎn)圖,即OGC關(guān)于ED、OGC關(guān)于ES、OGC關(guān)于TD、OGC關(guān)于PS的散點(diǎn)圖。Matplotlib庫(kù)是用于繪制可視化圖像的2D繪圖庫(kù),該部分使用Matplotlib庫(kù)的子庫(kù)matplotlib.pyplot,直接調(diào)用plot()函數(shù)對(duì)列表數(shù)據(jù)畫(huà)圖。plot()函數(shù)默認(rèn)為繪制線(xiàn)形(kind='line')圖形,繪制散點(diǎn)圖需要kind='scatter',設(shè)置好“x”和“y”等內(nèi)容,最終使用show()函數(shù)進(jìn)行展示。11.1油氣消費(fèi)量的影響因素分析2.回歸分析importpandasaspdimportmatplotlib.pyplotaspltfilename='Oil_and_gas.csv'data=pd.read_csv(filename,index_col=0)data.plot(kind='scatter',x='ED',y='OGC',title='ED-OGC')plt.xlabel("ED")plt.ylabel("OGC")plt.show()data.plot(kind='scatter',x='ES',y='OGC',title='ES-OGC')plt.xlabel("ES")plt.ylabel("OGC")plt.show()data.plot(kind='scatter',x='TD',y='OGC',title='TD-OGC')plt.xlabel("TD")plt.ylabel("OGC")plt.show()data.plot(kind='scatter',x='PS',y='OGC',title='PS-OGC')plt.xlabel("PS")plt.ylabel("OGC")plt.show()圖2散點(diǎn)圖繪制結(jié)果散點(diǎn)圖繪制結(jié)果如圖所示,該模型所選擇的4個(gè)自變量均與目標(biāo)變量存在線(xiàn)性相關(guān)關(guān)系,可以嘗試使用線(xiàn)性回歸方法進(jìn)行估計(jì)。11.1油氣消費(fèi)量的影響因素分析2.回歸分析(3)回歸分析模型應(yīng)用建立回歸分析模型可以使用statsmodels庫(kù),它是Python中的統(tǒng)計(jì)分析庫(kù),提供了多種用于統(tǒng)計(jì)建模和分析的函數(shù)和類(lèi),用于擬合多種統(tǒng)計(jì)模型,執(zhí)行統(tǒng)計(jì)測(cè)試及數(shù)據(jù)探索和可視化。首先使用iloc()函數(shù)定位數(shù)據(jù)所在列,并將數(shù)據(jù)類(lèi)型轉(zhuǎn)換成浮點(diǎn)型;然后使用sm.add_constant()函數(shù)在“X”上加入一列常數(shù)項(xiàng),從而得出后續(xù)的常數(shù)項(xiàng);接著使用OLS()函數(shù)建立模型,使用fit()函數(shù)獲取擬合結(jié)果,最后使用summary()函數(shù)展示擬合模型的詳細(xì)結(jié)果。importstatsmodels.apiassmX=data.iloc[:,1:5].values.astype(float)y=data.iloc[:,0].values.astype(float)X=sm.add_constant(X)model=sm.OLS(y,X)results=model.fit()print('檢驗(yàn)的結(jié)果為:\n',results.summary())11.1油氣消費(fèi)量的影響因素分析3.結(jié)果分析可以通過(guò)程序輸出結(jié)果觀察我國(guó)油氣消費(fèi)量與影響因素之間的關(guān)系,在回歸分析模型中,R2為0.998,表明模型的擬合度較好,自變量經(jīng)濟(jì)發(fā)展(ED)的回歸系數(shù)為0.0207,P值為0.446,說(shuō)明經(jīng)濟(jì)發(fā)展對(duì)油氣消費(fèi)量有正向促進(jìn)作用,但顯著性不高;經(jīng)濟(jì)結(jié)構(gòu)(ES)的回歸系數(shù)為-0.6158,P值為0.104,雖未低于0.1,但基本說(shuō)明了經(jīng)濟(jì)結(jié)構(gòu)的優(yōu)化對(duì)降低油氣消費(fèi)量產(chǎn)生了正向促進(jìn)作用;科技發(fā)展(TD)的回歸系數(shù)為0.1668,通過(guò)了5%的顯著性檢驗(yàn),表明當(dāng)科技發(fā)展水平較高時(shí),會(huì)促進(jìn)油氣消費(fèi)量的增加,說(shuō)明科技發(fā)展的方向主要是拉動(dòng)經(jīng)濟(jì)增長(zhǎng),在降低能耗方面未得到體現(xiàn);人口規(guī)模(PS)的回歸系數(shù)為3.5771,通過(guò)了1%的顯著性檢驗(yàn),表明人口規(guī)模越大,油氣消費(fèi)量越高。圖3回歸分析模型輸出結(jié)果11.2石油管線(xiàn)損失預(yù)測(cè)石油管線(xiàn)事故是指在石油管線(xiàn)系統(tǒng)中發(fā)生的意外事件,導(dǎo)致石油或石油產(chǎn)品的泄漏、溢出或其他不良后果,造成巨大的損失。本案例針對(duì)石油管線(xiàn)事故損失進(jìn)行預(yù)測(cè),通過(guò)搜集到的數(shù)據(jù)集和機(jī)器學(xué)習(xí)算法(隨機(jī)森林)建立模型來(lái)預(yù)測(cè)石油管線(xiàn)事故可能導(dǎo)致的損失,包括人員傷亡、環(huán)境破壞、財(cái)務(wù)成本等。本案例主要展示如何基于機(jī)器學(xué)習(xí)算法建立一個(gè)有效的預(yù)測(cè)系統(tǒng),幫助石油公司更好地管理風(fēng)險(xiǎn)和進(jìn)行資源分配,以提高石油管線(xiàn)安全性,降低損失。1.案例描述11.2石油管線(xiàn)損失預(yù)測(cè)步驟1:采集數(shù)據(jù)并準(zhǔn)備數(shù)據(jù)集。需要準(zhǔn)備用于訓(xùn)練和測(cè)試模型的數(shù)據(jù)集,數(shù)據(jù)集應(yīng)包含特征和對(duì)應(yīng)的目標(biāo)變量。特征是用于預(yù)測(cè)目標(biāo)變量的特征或指標(biāo),目標(biāo)變量是需要進(jìn)行預(yù)測(cè)的值。通常,需要將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集,其中訓(xùn)練集用于訓(xùn)練模型,測(cè)試集用于評(píng)估模型的性能。2.隨機(jī)森林回歸的步驟11.2石油管線(xiàn)損失預(yù)測(cè)步驟2:模型訓(xùn)練與預(yù)測(cè)。在sklearn庫(kù)中,可以使用RandomForestRegressor類(lèi)來(lái)構(gòu)建隨機(jī)森林回歸模型??梢栽O(shè)置一些參數(shù)來(lái)控制隨機(jī)森林的行為,例如決策樹(shù)的數(shù)量、特征選擇的方式、決策樹(shù)的生長(zhǎng)方式等,可以根據(jù)實(shí)際問(wèn)題和需求進(jìn)行參數(shù)的調(diào)整。使用訓(xùn)練集對(duì)隨機(jī)森林回歸模型進(jìn)行訓(xùn)練,模型將根據(jù)訓(xùn)練集中的樣本和目標(biāo)變量的值來(lái)構(gòu)建多棵決策樹(shù),并在每棵樹(shù)上進(jìn)行特征選擇和劃分。使用訓(xùn)練好的隨機(jī)森林回歸模型對(duì)測(cè)試集中的樣本進(jìn)行預(yù)測(cè),模型將對(duì)每棵決策樹(shù)的預(yù)測(cè)結(jié)果進(jìn)行平均或加權(quán)平均,從而得到最終的回歸預(yù)測(cè)結(jié)果。2.隨機(jī)森林回歸的步驟11.2石油管線(xiàn)損失預(yù)測(cè)步驟3:模型評(píng)估與調(diào)優(yōu)。通過(guò)與真實(shí)目標(biāo)變量的比較,評(píng)估模型的性能??梢允褂酶鞣N回歸性能指標(biāo),如均方誤差(MeanSquaredError,MSE)、平均絕對(duì)誤差(MeanAbsoluteError,MAE)、決定系數(shù)(R2)等,來(lái)評(píng)估模型的準(zhǔn)確性和泛化能力。根據(jù)評(píng)估結(jié)果可以對(duì)隨機(jī)森林回歸模型進(jìn)行調(diào)優(yōu),嘗試調(diào)整隨機(jī)森林回歸模型的參數(shù),從而提高模型的性能。步驟4:模型應(yīng)用。模型評(píng)估與調(diào)優(yōu)后,可以將訓(xùn)練好的隨機(jī)森林回歸模型保存為文件,在使用時(shí)讀取文件并進(jìn)行實(shí)際預(yù)測(cè)。2.隨機(jī)森林回歸的步驟11.2石油管線(xiàn)損失預(yù)測(cè)3.程序?qū)崿F(xiàn)與結(jié)果分析(1)數(shù)據(jù)預(yù)處理首先導(dǎo)入模型訓(xùn)練需要的各個(gè)包,然后利用Python的第三方庫(kù)pandas將數(shù)據(jù)集加載到DataFrame中,可以通過(guò)直接打印輸出DataFrame查看數(shù)據(jù)集的大小(數(shù)據(jù)集有多少個(gè)樣本及每個(gè)樣本有多少個(gè)特征),通過(guò)isnull()函數(shù)查看每列的非空值數(shù)量。對(duì)于空值超過(guò)50%以上的特征,直接刪除。圖4數(shù)據(jù)集部分內(nèi)容11.2石油管線(xiàn)損失預(yù)測(cè)3.程序?qū)崿F(xiàn)與結(jié)果分析(1)數(shù)據(jù)預(yù)處理
fromsklearn.model_selectionimporttrain_test_splitfromsklearn.metricsimportmean_squared_error,mean_absolute_error,r2_scoreimportmatplotlib.pyplotaspltimportnumpyasnpimportpandasaspdfromsklearn.ensembleimportRandomForestRegressorplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=Falsedf=pd.read_csv('data.csv')columns=df.columnslack=df.isnull().sum()/2795lack=df.isnull().sum()/2795lack=lack.apply(lambdax:format(x,'.2%'))columns_1=['LiquidSubtype','LiquidName','IntentionalRelease(Barrels)','ShutdownDate/Time','RestartDate/Time','OperatorEmployeeInjuries','OperatorContractorInjuries','EmergencyResponderInjuries','OtherInjuries','PublicInjuries','AllInjuries','OperatorEmployeeFatalities','OperatorContractorFatalities','EmergencyResponderFatalities','OtherFatalities','PublicFatalities','AllFatalities']df=df.drop(columns_1,axis=1)11.2石油管線(xiàn)損失預(yù)測(cè)3.程序?qū)崿F(xiàn)與結(jié)果分析(1)數(shù)據(jù)預(yù)處理
對(duì)于剩下的特征,如AccidentDate/Time列,將其拆分為年、月、日三個(gè)特征,來(lái)表示事故發(fā)生時(shí)間的特征,對(duì)于PipelineLocation、PipelineType等列,由于其特征值為分類(lèi)變量,因此用One-hot編碼進(jìn)行處理,對(duì)于部分缺失值用0填充。最后根據(jù)變量的實(shí)際意義,刪除與預(yù)測(cè)事故總成本沒(méi)有關(guān)系的特征。
df['AccidentDate/Time']=pd.to_datetime(df['AccidentDate/Time'])df['AccidentMonth']=df['AccidentDate/Time'].dt.monthdf['AccidentDay']=df['AccidentDate/Time'].dt.daycolumns_2=['ReportNumber','SupplementalNumber','OperatorName','Pipeline/FacilityName','AccidentCity','AccidentCounty','AccidentState','CauseSubcategory','PublicEvacuations','OtherCosts','PropertyDamageCosts','AccidentDate/Time','OperatorID']df=df.drop(columns_2,axis=1)df.fillna(0,inplace=True)columns_3=['PipelineLocation','PipelineType','LiquidType','CauseCategory','LiquidIgnition','LiquidExplosion','PipelineShutdown']data=pd.get_dummies(df,columns=columns_3)data['AllCosts']=data.pop('AllCosts')11.2石油管線(xiàn)損失預(yù)測(cè)3.程序?qū)崿F(xiàn)與結(jié)果分析(2)模型訓(xùn)練與預(yù)測(cè)
首先將標(biāo)簽和特征分開(kāi),并以8∶2的比例劃分訓(xùn)練集和測(cè)試集,然后基于得到的訓(xùn)練集數(shù)據(jù)(訓(xùn)練集特征X_train和訓(xùn)練集標(biāo)簽y_train)來(lái)擬合決策樹(shù)模型,最后使用訓(xùn)練好的模型對(duì)測(cè)試集數(shù)據(jù)進(jìn)行預(yù)測(cè)。其中,使用sklearn庫(kù)中的RandomForestRegressor類(lèi)來(lái)建立決策樹(shù)模型,可以設(shè)置不同的參數(shù)來(lái)調(diào)整樹(shù)的數(shù)量、深度、分裂準(zhǔn)則等。
X=data.iloc[:,:-1]y=data.iloc[:,-1]X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=33)random_forest_regressor=RandomForestRegress
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車(chē)零件不合格品管理
- 建筑工程投標(biāo)合同樣式
- 軟裝工程招投標(biāo)合同
- 2025裝飾公司加盟合同
- 醫(yī)療保健服務(wù)合同執(zhí)行策略
- 二零二五年精制粉原料基地合作開(kāi)發(fā)合同3篇
- 旅游團(tuán)人事經(jīng)理招聘合同
- 個(gè)人資金借貸合同樣本(2024年版)版B版
- 型材耐化學(xué)脂肪酸性蠟性檢測(cè)合同
- 殯葬設(shè)備租賃合同
- 2025年競(jìng)聘醫(yī)院內(nèi)科醫(yī)生崗位演講稿模版(3篇)
- 虛擬貨幣地址分析技術(shù)的研究-洞察分析
- 綠色供應(yīng)鏈管理制度內(nèi)容
- 心理學(xué)基礎(chǔ)知識(shí)考試參考題庫(kù)500題(含答案)
- 電力智慧檢修安全運(yùn)行三維可視化管理平臺(tái)建設(shè)方案
- 一年級(jí)數(shù)學(xué)(上)計(jì)算題專(zhuān)項(xiàng)練習(xí)集錦
- 消防安全應(yīng)急預(yù)案下載
- 《北航空氣動(dòng)力學(xué)》課件
- 附件:財(cái)政業(yè)務(wù)基礎(chǔ)數(shù)據(jù)規(guī)范(3.0版)
- 電商公司售后服務(wù)管理制度
- 火災(zāi)應(yīng)急處理課件
評(píng)論
0/150
提交評(píng)論