搞定計量經濟學,不可不學的Stata學習筆記

2020-12-04 學術世界

你,和經濟,密不可分。

讀中國經濟,關注經管世界

【資源】精美簡歷模板+自薦信+面試技巧免費共享

來源:計量經濟學服務中心

Stata基本操作

STATA的基本操作

setmem 500m, perm

顯示輸入內容

Display 1

Display 「clive」

顯示數據集結構describe

Describe /d

編輯 edit

Edit

重命名變量

Rename var1 var2

顯示數據集內容list/browse

List in 1

List in 2/10

數據導入:數據文件是文本類型(.csv)

insheet: . insheet using 「C:\Documentsand Settings\Administrator\桌面\ST9007\dataset\Fees1.csv」,clear

內存為空時才可以導入數據集,否則會出現(you must start with an empty dataset)

清空內存中的所有變量:.drop _all

導入語句後加入「clear」命令

打開及退出已存文件use

Use 文件路徑及文件名, clear

記錄命令和輸出結果(log)

1、 開始建立記錄文件:log using "J:\phd\output.log", replace

2、 暫停記錄文件:log off

3、 重新打開記錄文件:log on

4、 關閉記錄文件:log close

創建和保存程序文件:(doedit, do)

1、 打開程序編輯窗口:doedit

2、 寫入命令

3、 保存文件,.do.

4、 運行命令:.do 程序文件路徑及文件名

多個數據集合併為一個數據集(變量和結構相同)縱向合併append

insheet using"J:\phd\Fees1.csv", clear

save"J:\phd\Fees1.dta", replace

insheet using"J:\phd\Fees2.csv", clear

append using"J:\phd\Fees1.dta"

save"J:\phd\Fees1.dta", replace

橫向合併,在原數據集基礎上加上另外的變量merge

1、insheet using"J:\phd\Fees1.csv", clear

sort companyid yearend

save "J:\phd\Fees1.dta", replace

describe

insheet using "J:\phd\Fees6.csv", clear

sort companyid yearend

merge companyid yearend using "J:\phd\Fees1.dta"

save "J:\phd\Fees1.dta", replace

describe

2、_merge==1 obs. From master data

_merge==2 obs. From using data

_merge==3 obs. From both master and using data

幫助文件:help

1、. Help describe

描述性統計量

summarize incorporationyear 單個

summarize incorporationyear-big6 連續多個

summarize _all or simply summarize 所有

更詳細的統計量

summarize incorporationyear, detail

centile

centile auditfees, centile(0(10)100)

centile auditfees, centile(0(5)100)

tabulate不同類型變量的頻數和比例

tabulate companytype

tabulate companytype big6, column 按列計算百分比

tabulate companytype big6, row 按行計算百分比

tab companytype big6 ifcompanytype<=3, row col 同時按行列和條件計算百分比

計算滿足條件觀測的個數

count if big6==1

count if big6==0| big6==1

按離散變量排序,對連續變量計算描述性統計量:

by companytype, sort:summarize auditfees, detail

sort companytype

By companytype:summarizeauditees

轉換變量

按公司類型將公開發行股票公司賦值為1,其他為0

gen listed=0

replace listed=1if companytype==2

replace listed=1if companytype==3

replace listed=1if companytype==5

replace listed=.if companytype==.

產生新變量gen

Generate newvar=表達式

數據管理

recode命令

1、產生有多個值的變量的啞變量recode

recode year (min/1999 = 0) (2000/max = 1), gen (yeardum)

min/1999表示小於等於1999的值全部賦值為0

2000/max表示大於等於2000的值全部賦為1。

2、對一個連續變量按一定值分為不同間隔的組recode

gen assets_categ=recode(totalassets, 100, 500, 1000, 5000, 20000,100000, 1000000)。分組的值為每組的上限,包含該值。

sort assets_categ

by assets_categ: sum totalassets assets_categ

3、 對一個連續變量按一定值分為相同間隔的組autocode

autocode(variablename, # of intervals, min value, max value)

for example: genassets_categ=autocode(totalassets, 10, 0, 10000)

4、對一個連續變量按每組樣本數相同進行分組:xtile

xtile assets_categ=totalassets, nquantiles(10)

每組樣本不一定完全相同

一次性計算同一變量不同組別的均值:egen命令

按公司類型先排序,再計算每一類型公司審計費用的均值並賦值給新變量:

by companytype, sort: egen meanaf2=mean(auditfees)

lcount()

lmean()

lmedian()

lsum()

_n和_N命令

1、顯示每個觀測的序號並顯示總觀測數

sort companyid fye

capture drop x

gen x=_n

capture drop y

gen y=_N

list companyidfye x y in 1/30

2、分組顯示每個組中變量的序號和每組總的樣本數

capture drop x y

sort companyid fye

by companyid: gen x=_n

by companyid: gen y=_N

list companyid fye x y in 1/30

3、創建新變量等於每個分組中變量的第一個值或最後一個值

sort companyid fye

by companyid: gen auditfees_first=auditfees[1]

by companyid: gen auditfees_last=auditfees[_N]

list companyid fye auditfees auditfees_first auditfees_last in 1/30

4、創建新變量等於滯後一期或滯後兩期的值

sort companyid fye

by companyid: gen auditfees_lag1= auditfees[_n-1]

by companyid: gen auditfees_lag2= auditfees[_n-2]

list companyid fye auditfees auditfees_lag1 auditfees_lag2 in 1/30

縮尾處理winsor

winsor rev, gen(wrev) p(0.01)0.01代表去掉的百分數。

Winsor rev, gen(wrev) h(5),5代表去掉的個數

列聯表檢驗:

1、創建列聯表的命令:

tabulate companytype big6,row

第一個變量是表的最左側一列的項目,第二個變量是表的第一行的項目。

2、兩變量之間的相關性檢驗:chi2

tabulate companytype big6,chi2 row

3、相關矩陣:

pwcorr lnaf big6 year listed

4、列出相關矩陣並進行符號檢驗

pwcorr lnaf big6 year listed, sig

5、在矩陣中列出觀測數

pwcorr lnaf big6 listed if year==2000, sig obs

模型

format x1 %10.3f ——將x1的列寬固定為10,小數點後取三位

基本一元回歸

regress y x

回歸結果的保存

回歸結果的係數保存在_b[varname]內存變量中,常數項的係數保存在(_cons)內存變量中。

預測值及殘差

predict yhat

predict yres, resid

yres即為真實值得與預測值之差

殘差與X的散點圖

twoway (scatter y_res x) (lfit y_res x)

衡量估計係數準確程度:標準誤差。

用樣本的標準偏差與係數之間的關係來衡量即T值(用係數除以標準差),同時P值是根據T值的分布計算出來的,表示係數落入標準對應上下限的可能性。前提是殘差符合以下假設:

同方差:Homoscedasticity (i.e., the residuals have a constant variance)

獨立不相關:Non-correlation (i.e., the residuals are not correlated with eachother)

正態分布:Normality (i.e., the residuals are normally distributed)

回歸結果包含的一些內容的意思

l 各變差的自由度:

For the ESS, df = k-1 where k = number of regression coefficients(df = 2 – 1)

For the RSS, df = n – k where n =number of observations (= 11 - 2)

For the TSS, df = n-1 ( = 11 – 1)

MS:變差除以自由度:The last column(MS) reports the ESS, RSS and TSS divided by their respective degrees offreedom

R平方:The R-squared = ESS / TSS

調整的R平方:Adj R-squared =1-(1-R2)(n-1)/(n-k) ,消除了加入相關度不高解釋變量後R平方增加的不足。

Root MSE = square root of RSS/n-k:模型的平均解釋能力

The F-statistic = (ESS/k-1)/(RSS/n-k):模型的總解釋能力

Heteroscedasticity(hettest)異方差性

檢驗方差齊性的方法:

回歸後使用hettest命令:

reg auditfees nonauditfees totalassets big6 listed

hettest

方差齊性不會使係數有偏,但會使使係數的標準差有偏。產生的原因有可能是數據本身有界限,產生高的偏度。一些方差不齊可以通過取對數消除。當發現不齊性時使用Huber/White/sandwich estimator對標準差進行調整。STATA可以在回歸時加上robust來實現。

reg auditfees nonauditfees totalassets big6 listed, robust

加robust後的回歸係數相同,但標準差不同,T值變小,P值變大,F值變小,R2不變。

Correlated errors(自變量相關)

The residuals of a given firm are correlated across years (「timeseries dependence」),面板數據(In paneldata), 同一公司不可觀測的特性對不同年度都會產生一定的影響,這時就會使數據不獨立。there are likely to be unobserved company-specific characteristicsthat are relatively constant over time

標準差會下偏,This problem canbe avoided by adjusting the standard errors for the clustering of yearlyobservations across a given company

消除變量相關問題:

在回歸中加入robust cluster()

reg lnaf lntabig6 listed, robust cluster (companyid)

如何驗證同一公司不同年度數據的殘差的相關性

reg lnaf lnta

predict res, resid

keep companyid year res

sort companyid year

drop if companyid==companyid[_n-1] & year==year[_n-1]

reshape wide res, i(companyid) j(year)

browse

pwcorr res1998- res2002

在使用面板數據時應注意:

只用robust控制heteroscedasticity,而未用cluster( )控制time-series dependence,T統計量也會上偏

如果 heteroscedasticity也未控制,T統計量會上偏更嚴重。

因此在使用面板數據時應加入robust cluster() option, otherwise your 「significant」 results frompooled regressions may be spurious.

什麼情況下會產生多重共線性

l We have seen that when there isperfect collinearity between independent variables, STATA will have to excludeone of them. For example, year_1 + year_2 + year_3 + year_4 + year_5 = 1

reg lnaf year_1 year_2 year_3year_4 year_5, nocons

STATA automatically throws awayone of the year dummies so that the model can be estimated

l Even if the independentvariables are not perfectly collinear, there can still be a problem if they arehighly correlated

後果:

the standard errors of the coefficients to be large (i.e., thecoefficients are not estimated precisely)

the coefficient estimates can be highly unstable

衡量方法:

Variance-inflation factors (VIF) 可用來衡量是否存在多重共線性。

reg lnaf lnta big6 lnta1

vif

reg lnaf lnta big6

vif

多重共線性的嚴重程度:如果為10時可判斷為高,為20時可判斷為非常高。

【遇見·愛】經管世界公益交友平臺-人工智慧匹配

相關焦點

  • 從0到1:一個外行的計量經濟學進階之路!
    本文轉載自【微信公眾號:社科學術圈,ID:shkxquan】經微信公眾號授權轉載,如需轉載與原文作者聯繫作為一個非計量非經濟學專業出身的人(雖學過一些統計,SPSS和stata基本操作也會),想著梳理下自己學習計量這一路的歷程,或許對於初入計量之門/像我一樣非計量專業出身但有想很好的利用計量工具的人有一些幫助和啟示
  • 怎麼在Stata實現
    似然比(LR)檢驗、沃爾德(Wald)檢驗、拉格朗日(LM)檢驗是計量經濟學中經常使用到的三類統計檢驗。下面,本文以農業生產函數估計為例,介紹三類檢驗的Stata實現。使用的數據是一套有關農戶種植業投入產出的微觀調查數據。
  • 零基礎的同學如何用stata做一元線性回歸模型?
    stata軟體越來越受研究生的喜歡,很多研究生在做統計研究、學術分析的時候,也多選用此軟體。網上有關stata的教程有很多,但對於沒有基礎的同學來說,學起來稍微就有些吃力了。那麼,零基礎的同學應該如何學習呢?如何用stata做出滿意的一元線性回歸模型呢 ?
  • 高考生物一輪複習:25張圖搞定高中生物必修知識!附學霸手寫筆記
    童鞋們好哇,學姐認為高中生物想要學好,高一的時候就應該深入學習把這些必修的知識點記熟、記牢,不然到了高二高三,知識點增多,學起來也會覺得很累同時學生也要學會正確的學習方法,不能盲目地背記,否則越到後面,知識記得越多,相互之間就開始混淆下面學姐就為各位學生整理的高考生物一輪複習:25張圖搞定高中生物必修知識!
  • Meta分析學習筆記
    四、有異質性時分析異質性來源:敏感性分析和亞組分析①敏感性分析:改變分析模型,逐篇排除文獻、剪補法(stata軟體)②亞組分析:分析不同因素分組是否是來源五、Mate分析書寫套路及雜誌筆記分享就到這了,但是科研路漫漫其修遠兮!Meta終究是發表論文所引用到的一種工具,決定不了文章的真正高度。就像做飯,即便你用的是章丘鐵鍋,沒有好的食材,也沒法做出可口的飯菜!
  • 零基礎的同學如何用stata做多元線性回歸模型?
    上一期,我們分享了如何用stata做一元線性回歸模型,不知道同學們學的怎麼樣呢?有沒有自己動手操作一遍呢?這一期:我們將學習如何用stata做多元線性回歸模型!這些是小王(邀請者)最近學習計量時的一些心得和體會,希望能與大家一起分享。
  • 高中部學霸化學筆記曝光,搞定化學難題,成績至少提升30
    在高中化學學習中,同學們會不會感到乏力呢?知識點記不住,方程式不會寫,離子反應不會做,這些應該算得上是同學們都遇到過的難題了。但是我們應該怎麼解決這個難題呢?在學習化學時,千萬記住上課期間不要」走神「,只要你一走神老師講的知識點就會與你擦肩而過,等你回過神來想要再聽那就很困難了,還有就是你們的作業!
  • 騰訊系APP助你搞定學習辦公,搞定學術論文寫作!
    你還在用紙筆記筆記嗎?你還在用PPT作報告嗎?你還在用Word寫學術論文嗎?你還在使用U盤、硬碟存儲資料論文嗎?你還在用Visio繪製流程圖和思維導圖嗎?投必得學術 今天告訴你,上述工作統統都可以用一個軟體就可以搞定!
  • stata統計學軟體IC\SE\MP版本的區別與選擇
    stata統計學軟體IC\SE\MP版本的區別與選擇主講:三文魚IC\SE\MP是啥?三個版本是逐步遞進的關係,功能比較 IC<SE<MP,1.stata IC這個版本在官方的解釋是"標準版"的意思,這版本支持2048個變量,給我們日常的使用已經足夠了。2.stata SE這個版本的官方解釋是"特別版"special edition的意思。但在國內幾乎75%的stata用戶都在用這個版本。
  • 高中生物:十張表~搞定實驗中所有試劑使用!附高考狀元手寫筆記
    學姐是過來人,學姐真誠告訴你們,高中生物確實不難,但想要考高分真的不簡單學姐分享一下學姐的學習方法①基礎先把生物書仔仔細細過幾遍,小字課外閱讀也不要落下(像什麼精明的捕食者,端粒酶)這是最最基礎的,圈畫出不懂的知識點,然後找老師一個一個問懂(不要覺得不好意思,與老師多互動會增強對於這門功課興趣,學起來也更加有勁)②提升篇
  • 深度學習筆記8:利用Tensorflow搭建神經網絡
    作者:魯偉 一個數據科學踐行者的學習日記。
  • 費曼學習法、時間統計法、整體學習法、康奈爾筆記、思維導圖
    費曼學習法的具體過程:選擇目標、模擬教學、查漏補缺、精簡類比。費曼學習法不只是一種學習方法,還是一種思維方式。要麼搞定,要麼刪除。看起來很殘忍,但只有這樣才能讓人更專注。兩列清單法其實就是抓主要矛盾,徹底放棄次要矛盾。
  • 初一學習方法:做筆記
    做筆記是門很少有人研究的學問。會做筆記的同學可能上課時記得並不多,但很有成效。有些同學的筆記只有自己看得懂,但也很有效。相反,有的同學筆記記得很多,上課時幾乎一直在記筆記,不僅效果差,甚至會影響聽課效果。所以學會有效地做筆記對於每一個同學來說都是很重要的。   1.如何記課堂筆記?
  • 免費資源|stata 16 中文版,32G統計和meta教程24h免費領
    今天我們不僅分享最新的stata軟體,而且打包32G教程送給您。stata做meta資源獲取方式文獻檢索、管理全套教學視頻(含Meta文獻檢索)資源獲取方式:
  • 偏微分方程 學習筆記
    對於Q Quant而言,最核心的數學問題就在於偏微分方程,這個過程可以分為兩個大的環節,第一是根據資產的特性推導出偏微分方程,第二則是根據數學原理求解偏微分方程,這裡就包括了解析解和數值解,關於偏微分方程的數值解,小編已經有分享兩篇相應的課程筆記,而對於推導出偏微分方程這一步驟,則需要用到隨機積分的理論知識體系(包括隨機分析,測度論,實分析與泛函分析等),小編的其他筆記推文也有涉及,而這一篇筆記則是講解如何求解偏微分方程的解析解
  • 編串必備:文玩人不可不學的繩結技巧全攻略,拿走不謝!
    編串必備:文玩人不可不學的繩結技巧全攻略,拿走不謝!1、鳳尾結的編法找好一根繩子,巨頭什麼顏色自己定就可以了,注意看流程哦!下面是圖解!注意A和B的箭頭變換方向!仔細看方法哦!
  • 用於政策評估的計量經濟學:問題、前沿與展望
    政策評估計量經濟學(econometrics of policy evaluation)是現代計量經濟學的前沿分支之一,它將自然試驗的思想與結構模型相結合,通過發展識別估計各種因果效應的統計推斷方法,為科學評估政策的有效性與利弊得失提供方法論支持。
  • 零基礎的同學如何用Stata做logistic回歸?
    前面兩期我們已經分享了一元線性回歸模型、多元線性回歸模型的操作方法,今天我們將分享logistic回歸的學習心得,希望大家都能有所收穫哦。logistic回歸的兩個條件在stata中如何做logistic回歸?logistic回歸的操作步驟是什麼?
  • MIT線性代數(Linear Algebra)中文筆記
    前段時間, Github作者yizhen20133868在Github上發布了MIT線性代數的中文筆記,該筆記總結了他們在學習MIT線性代數課程的學習經驗和過程。課程順序是按照麻省理工公開課的 Linear Algebra. 記錄的學習筆記。