stata regress 多變量回歸 regression結果分析
由於之前上課的時候用過stata感覺用stata做分析的時候互動什麼的體驗其實很好,這次要做一個迴歸分析,發現之前學過的很多都不太記得了,就打算寫一個部落格作為備忘。
0. stata documentation
1. stata 匯入 excel 檔案
cd C:\Users\蟲子\Dropbox\Fitts\pilotVersions\pilot5\DataAnalysis\excelSamples
clear
import excel allPaperSample.xlsx, firstrow
第一步,先設定操作資料夾,cd到要匯入excel 檔案的資料夾。
第二步,清除所有變數。如果當前視窗還有variable的話,excel會匯入失敗。
第三步,匯入excel檔案,檔名字是“allPaperSample.xlsx”, firstrow在這邊的意思是要把第一行作為變數名
2. stata 生成新變數
https://www.stata.com/manuals13/gsm11.pdf
stata一般有generate 和replace兩種方式生成新變數。
generate就是生成一個新的變數
replace就是用這個新的變數替換掉原來的變數
generate logMT = log10(MT)
以上就是以現有變數MT,生成一個新變數logMT。
3. stata 檢視基本資訊
檢視某個變數的基本資訊
codebook variableName
檢視所有變數的基本資訊
codebook
4. stata 多變量回歸
regress errors subID timeDay timeDir timeOrder vCon W D
regress後面的第一個變數:errors 是要回歸的目標,之後所有的變數都是模型中的predictors。
隨便給一個迴歸的結果:
圖中左上角
圖中左上角的是對於regress後得到的model 的一個“analysis-of-variance(ANOVA)”表格。
其每一列的頭:SS , df , MS 分別對應:“sum of squares”, “degrees of freedom”和“mean square”。
第一列:可以知道Model的SS(1808)/Total的SS(8001)=R-squared(0.2261)即R2。R2的意思就是說,這個模型說明解釋了這些變數中多少的variance。
第二列:自由度,一共有N個sample這個資料集就有(N-1)個dof(因為要減去均值)。模型的自由度由模型有幾個predictor決定。
第三列:MS一般是用於計算F-statistic的。
圖中的右上角
圖中的右上角是另一些統計描述:
第一行:Number of obs 一共有多少個sample
第二行:F(df of Model,df of Residual) = MS of Model(301.448)/MS of Residual(6.934) = 43.47
The F statistic tests the hypothesis that all coefficients excluding the constant are zero.
這個F值的H0假設是:所有的predictor都不對y產生影響,即所有predictor的coef都會是0,所有的predictor都不significant。
第三行:Prob > F 的值是上述的H0假設的成立的可能性。當其趨近於0的時候,說明至少會有一些predictor的coef不為0.
第四行:R-squared 前面已經說過了
第五行:Adj R-squared 由於R2存在一個問題:無論什麼predictor加到模型中,R2都會變大。為了避免這個問題,adjR2懲罰了模型的複雜度。
第六行:root mean squared error是MS of Redidual的平方根(2.6333 = 6.9342^0.5),其意義是迴歸模型的residual部分的standard deviatio。
圖中下面
圖中下面的部分就是regression的結果了。
最後一行是模型的常數項
第一列是模型的係數,根據係數我們就可以寫出迴歸的線性模型了
第二列是線性迴歸係數的standard error
查了半天沒看到這個引數具體是怎麼計算的。不過這個係數是對前面coef的估計的可信度估計,越小越好。
有一個百度的答案:
https://zhidao.baidu.com/question/501609456486160404.html
這是估計的標準誤差,是殘差均方開根號的值,殘差均方等於殘差平方和除以自由度,殘差平方和等於總平方和減去迴歸平方和
不過不知道里面說的殘差是怎麼計算的。
第三列是t-statisitic
正常T-statistic應該在0假設(null hypothesis)為真時,服從T分佈(T-distribution).
粗略地講這個值大於2,對應的predictor就是significant。
Coefficient除以standard error 等於 t-statistic
第四列是這個t-statistic的p-value,一般來講小於0.05就是significant的
第五六列是95%confidence interval of coef,係數的95%置信區間。