stata中回歸分析常用方法


// 按鍵盤上的PageUp可以使用上一次輸入的代碼(Matleb中是上箭頭)
// 清除所有變量
clear
// 清屏 和 matlab的clc類似
cls
// 導入數據(其實是我們直接在界面上粘貼過來的,我們用鼠標點界面導入更方便 本條請刪除后再復制到論文中,如果評委老師看到了就知道這不是你寫的了)
// import excel "C:\Users\hc_lzp\Desktop\數學建模視頻錄制\第7講.多元回歸分析\代碼和例題數據\課堂中講解的奶粉數據.xlsx", sheet("Sheet1") firstrow
import excel "課堂中講解的奶粉數據.xlsx", sheet("Sheet1") firstrow
// 定量變量的描述性統計
summarize 團購價元 評價量 商品毛重kg
// 定性變量的頻數分布,並得到相應字母開頭的虛擬變量
tabulate 配方,gen(A)
tabulate 奶源產地 ,gen(B)
tabulate 國產或進口 ,gen(C)
tabulate 適用年齡歲 ,gen(D)
tabulate 包裝單位 ,gen(E)
tabulate 分類 ,gen(F)
tabulate 段位 ,gen(G)
// 下面進行回歸
regress 評價量 團購價元 商品毛重kg
// 下面的語句可幫助我們把回歸結果保存在Word文檔中
// 在使用之前需要運行下面這個代碼來安裝下這個功能包(運行一次之后就可以注釋掉了)
// ssc install reg2docx, all replace
// 如果安裝出現connection timed out的錯誤,可以嘗試換成手機熱點聯網,如果手機熱點也不能下載,就不用這個命令吧,可以自己做一個回歸結果表,如果覺得麻煩就直接把回歸結果截圖。
est store m1
reg2docx m1 using m1.docx, replace
// *** p<0.01 ** p<0.05 * p<0.1
//regress y x1 x2 ... xk,beta
//標准化回歸
// Stata會自動剔除多重共線性的變量
regress 評價量 團購價元 商品毛重kg A1 A2 A3 B1 B2 B3 B4 B5 B6 B7 B8 B9 C1 C2 D1 D2 D3 D4 D5 E1 E2 E3 E4 F1 F2 G1 G2 G3 G4
est store m2
reg2docx m2 using m2.docx, replace

// 得到標准化回歸系數
regress 評價量 團購價元 商品毛重kg, b

// 畫出殘差與擬合值的散點圖
regress 評價量 團購價元 商品毛重kg A1 A2 A3 B1 B2 B3 B4 B5 B6 B7 B8 B9 C1 C2 D1 D2 D3 D4 D5 E1 E2 E3 E4 F1 F2 G1 G2 G3 G4
rvfplot
// 殘差與擬合值的散點圖
graph export a1.png ,replace
// 殘差與自變量團購價的散點圖
rvpplot 團購價元
graph export a2.png ,replace

// 為什么評價量的擬合值會出現負數?
// 描述性統計並給出分位數對應的數值
summarize 評價量,d

// 作評價量的概率密度估計圖
kdensity 評價量
graph export a3.png ,replace

// 異方差BP檢驗
estat hettest ,rhs iid

// 異方差懷特檢驗
estat imtest,white

// 使用OLS + 穩健的標准誤
regress 評價量 團購價元 商品毛重kg A1 A2 A3 B1 B2 B3 B4 B5 B6 B7 B8 B9 C1 C2 D1 D2 D3 D4 D5 E1 E2 E3 E4 F1 F2 G1 G2 G3 G4, r
est store m3
reg2docx m3 using m3.docx, replace

// 計算VIF
estat vif

// 逐步回歸(一定要注意完全多重共線性的影響)
// 向前逐步回歸(后面的r表示穩健的標准誤)
stepwise reg 評價量 團購價元 商品毛重kg A1 A3 B1 B2 B3 B4 B5 B6 B7 B9 C1 D1 D2 D3 D4 E1 E2 E3 F1 G1 G2 G3, r pe(0.05)
// 向后逐步回歸(后面的r表示穩健的標准誤)
stepwise reg 評價量 團購價元 商品毛重kg A1 A3 B1 B2 B3 B4 B5 B6 B7 B9 C1 D1 D2 D3 D4 E1 E2 E3 F1 G1 G2 G3, r pr(0.05)
// 向后逐步回歸的同時使用標准化回歸系數(在r后面跟上一個b即可)
stepwise reg 評價量 團購價元 商品毛重kg A1 A3 B1 B2 B3 B4 B5 B6 B7 B9 C1 D1 D2 D3 D4 E1 E2 E3 F1 G1 G2 G3, r b pr(0.05)


// 補充語法 (大家不需要具體的去學Stata軟件,掌握我課堂上教給大家的一些命令應對數學建模比賽就可以啦)
// 事實上大家學好Excel,學好后應對90%的數據預處理問題都能解決
// (1) 用已知變量生成新的變量
generate lny = log(評價量)
generate price_square = 團購價元 ^2
generate interaction_term = 團購價元*商品毛重kg

// (2) 修改變量名稱,因為用中文命名變量名稱有時候可能容易出現未知Bug
rename 團購價元 price


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM