連玉君,廖俊平
(中山大學(xué) 嶺南學(xué)院,廣東 廣州 510275)
實證分析中,經(jīng)常需要對比分析兩個子樣本組的系數(shù)是否存在差異。例如,在公司金融領(lǐng)域,研究薪酬激勵是否有助于提升業(yè)績時,模型設(shè)定為:
ROEit=αi+Salaryit-1·β+Controlsit-1·γ+uit
關(guān)注的重點是系數(shù)β。文獻(xiàn)中經(jīng)常把樣本組分成“國有企業(yè)(SOE)”和“民營企業(yè)(PRI)”兩個樣本組,繼而比較βSOE和βPRI是否存在差異。通常認(rèn)為,民營企業(yè)的薪酬激勵更有效果,即βSOE<βPRI。
如果兩個樣本組中的模型設(shè)定是相同的,則兩組之間的系數(shù)大小是可以比較的,而且這種比較在多數(shù)實證分析中都是非常必要的。參見Cleary(1999),以及連玉君等(2010)。
下面使用Stata軟件自帶的一份數(shù)據(jù)文件(nlsw88.dta),說明此類問題的關(guān)鍵所在。這份數(shù)據(jù)包含了1988年采集的2 246個婦女的資料,包括:小時工資(wage),每周工作時數(shù)(hours),種族(race)等關(guān)鍵變量。
假如我們研究的問題是種族特征是否會影響婦女的工資決定機制,則我們最為關(guān)注的是“白人組”和“黑人組”的工資決定因素是否存在差異。分析的重點集中于工齡(ttl_exp)和婚姻狀況(married)這兩個變量的系數(shù)在兩組之間是否存在顯著差異。
我們可以使用如下命令進(jìn)行分組OLS回歸,并呈現(xiàn)“白人組”和“黑人組”的系數(shù)估計值:
執(zhí)行上述命令后將呈現(xiàn)如下結(jié)果,如表1所示:
表1 “黑人組”和“白人組”系數(shù)對比
可以看到,ttl_exp變量在[white組]和[black組]的系數(shù)分別為0.251和0.269,二者都在1%水平上顯著異于零。問題在于:以上結(jié)果能解釋為0.269比0.251大嗎?從統(tǒng)計意義上來看,答案顯然沒有那么明確。
下面,我們介紹三種檢驗組間系數(shù)差異的方法:其一,引入交叉項(Chow檢驗);其二,基于似無相關(guān)模型的檢驗方法(suest);其三,費舍爾組合檢驗(Permutation test)。第一種方法是文獻(xiàn)中普遍使用的,但假設(shè)條件最為嚴(yán)格,第三種方法主要以自抽樣為基礎(chǔ),假設(shè)條件最為寬松。
1.基本思想
這是文獻(xiàn)中最常用的方法,執(zhí)行起來也最簡單。以檢驗ttl_exp在兩組之間的系數(shù)是否存在顯著差異為例。引入一個虛擬變量Di,若某個婦女是黑人,則Di=1,否則Di=0。在如下命令中,black變量即為這里的Di。模型設(shè)定為:
Wagei=α+γ·Di+β·ttl_expi+δ(Di×ttl_expi)+Controlsi·γ+εi
(1)
這是最基本的包含虛擬變量,以及虛擬變量與一個連續(xù)變量交乘項的情形。
顯然,對于“白人組”而言,Di=0,則(1)式可以寫為:
Wagei=α+β·ttl_expi+Controlsi·γ+εi
(1a)
對于“黑人組”,(1)式可以寫為:
Wagei=(α+γ)+(β+δ)·ttl_expi+Controlsi·γ+εi
(1b)
由此可見,在(1)式中,參數(shù)γ和δ分別反映了黑人組相對于白人組的截距和斜率差異。此時,參數(shù)反映了ttl_exp這個變量在兩個樣本組中的系數(shù)差異。因此,檢驗ttl_exp在兩組之間的系數(shù)是否存在顯著差異就轉(zhuǎn)變?yōu)镠0:δ=0。
2.Stata實現(xiàn)
估計(1b)式的Stata命令如下:
為節(jié)省篇幅,僅列出最關(guān)鍵的結(jié)果如下:
交乘項[ttl_x_black]的系數(shù)為-0.01818,對應(yīng)的p-value為0.756,表明[ttl_exp]的系數(shù)在兩組之間并不存在顯著差異。我們也可以直接采用Stata的因子變量表達(dá)式,在不用預(yù)先生成交乘項的情況下得到完全相同的結(jié)果:
然而,在上述檢驗過程中,我們無意識中施加了一個非常嚴(yán)格的假設(shè)條件:只允許變量[ttl_exp]的系數(shù)在兩組之間存在差異,而其他控制變量(如married,south,hours等)的系數(shù)則不隨組別發(fā)生變化。這顯然是一個非常嚴(yán)格的假設(shè)。因為,從表1中的結(jié)果來看,married,south,hours等變量在兩組之間的差異都比較明顯。
我們可以放松上述假設(shè),允許married,south,hours等變量的系數(shù)存在組間差異。這主要通過引入虛擬變量black與上述變量的交乘項來實現(xiàn)(模型2):
當(dāng)然,我們也可以采用更為靈活的方式:允許所有的變量在兩組之間都存在系數(shù)差異1(模型3):
這其實就是大名鼎鼎的Chow test(鄒檢驗),可以用chowtestP命令快捷地完成。
3.小結(jié)
引入交乘項來檢驗?zāi)硞€或某幾個變量的系數(shù)是否存在組間差異,只需在普通線性回歸中加入交乘項即可,但需要注意這一方法背后隱含的假設(shè)條件(為了便于說明,重新將(1)式列出):
Wagei=α+γ·Di+β·ttl_expi+δ(Di×ttl_expi)+Controlsi·γ+εi
(1)
A1:所有控制變量的系數(shù)在兩組之間無差異,即γwhite=γblack;
因此,當(dāng)其他變量的系數(shù)在兩組之間也存在明顯差異(A1不滿足),或存在異方差(A2不滿足)時,上述檢驗方法得到的結(jié)果都存在問題。
4.解決辦法
對于A1,實際操作過程中,可以通過引入更多的交項來放松A1,如上文提到的“模型2”或“模型3”。
對于A2,則可以在上述回歸分析過程中加入vce(robust)選項,以便允許干擾項存在異方差;或加入vce(cluster varname)以便得到聚類調(diào)整后的穩(wěn)健型標(biāo)準(zhǔn)誤。
上述范例中,是以基于截面數(shù)據(jù)的OLS回歸為例的,但這一方法也適用于其他命令,如針對面板數(shù)據(jù)的xtreg,針對離散數(shù)據(jù)的logit,probit等。
1. 基本思想
顧名思義,所謂的似無相關(guān)模型(seemingly unrelated regression)其實就是表面上看起來沒有關(guān)系,但實質(zhì)上有關(guān)系的兩個模型。這聽起來有點匪夷所思。這種“實質(zhì)上”的關(guān)系其實是假設(shè)白人組和黑人組的干擾項彼此相關(guān)。為了表述方便,將白人和黑人組的模型簡寫如下:
白人組:y1i=x1iβ1+e1i,i=1,2,…,N1
(2a)
黑人組:y2j=x2jβ2+e2j,j=1,2,…,N2
(2b)
若假設(shè)corr(e1,e2)=0,則我們可以分別對白人組和黑人組進(jìn)行OLS估計。然而,雖然白人和黑人種族不同,但所處的社會和法律環(huán)境,面臨的勞動法規(guī)都有諸多相似之處,使得二者的干擾項可能相關(guān),即corr(e1,e2)≠0。此時,對兩個樣本組執(zhí)行聯(lián)合估計(GLS)會更有效率(詳見Greene(2012),292-304)。執(zhí)行完 SUR 估計后,對兩組之間的系數(shù)差異進(jìn)行檢驗。
從上面的原理介紹,可以看出,基于SUR估計進(jìn)行組間系數(shù)差異檢驗時,假設(shè)條件比第一種方法要寬松一些:
其一,在估計過程中,并未預(yù)先限定白人組和黑人組中各個變量的系數(shù)相同,因此在(2)式中,我們分別用β1和β2表示白人組和黑人組各個變量的系數(shù)向量;
2.Stata 實現(xiàn)方法
在Stata中執(zhí)行上述檢驗的步驟為:(1) 分別針對白人組和黑人組進(jìn)行估計(不限于OLS估計,可以執(zhí)行l(wèi)ogit,tobit等估計),存儲估計結(jié)果;(2) 使用suest命令執(zhí)行SUR估計;(3) 使用test命令檢驗組間系數(shù)差異。范例如下:
Step 2 的結(jié)果如下(為便于閱讀,部分變量的系數(shù)未呈現(xiàn)):
對上述命令和結(jié)果的簡要解釋如下:
其一,白人組和黑人組估計結(jié)果分別存儲于w和b兩個臨時性文件中。
其二,執(zhí)行suest w b命令時,白人組和黑人組的被視為兩個方程,分別對應(yīng)于(2a)和(2b)式。Stata會自動將兩個方程對應(yīng)的樣本聯(lián)合起來,采用GLS執(zhí)行似無相關(guān)估計(SUR)。
由于SUR屬于多方程模型,因此需要指定每個方程的名稱,在下面呈現(xiàn)的回歸結(jié)果中,[w_mean]和[b_mean]分別是白人組和黑人組各自對應(yīng)的方程名稱。因此,[w_mean]ttl_exp表示白人組方程中ttl_exp變量的系數(shù),而[b_mean]ttl_exp則表示黑人組中ttl_exp變量的系數(shù)。
執(zhí)行組間系數(shù)差異檢驗的結(jié)果如下(Step 3):
此時,ttl_exp在兩組之間的系數(shù)差異仍然不顯著,這與采用第一種方法得到的結(jié)論是一致的。在我們測試的三個變量中,只有south的系數(shù)在兩組之間存在顯著差異,對應(yīng)的p-value為0.0169。
3.使用bdiff命令
上述過程可以使用bdiff命令快捷地加以實現(xiàn),結(jié)果的輸出方式也更為清晰②。舉例如下:
輸出結(jié)果如下:
兩點說明:其一,使用suest時,允許兩個樣本組的解釋變量個數(shù)不同。但由于一些技術(shù)上的問題尚未解決,bdiff命令要求兩個樣本組中的解釋變量個數(shù)相同。在上例中,白人組在Mining行業(yè)的觀察值個數(shù)為零(輸入tab industry black命令可以查看),導(dǎo)致我們加入行業(yè)虛擬變量時,白人組只有10個行業(yè)虛擬變量,而黑人組則有11個行業(yè)虛擬變量。為此,在上述命令中,我使用drop if industry==2命令刪除了Mining行業(yè)的觀察值。其二,目前,bdiff命令還不能很好地支持因子變量的寫法(help fvvarlist),因此上例中的行業(yè)虛擬變量不能通配符方式寫成d*,而必須寫成原始模樣:d2 d3 d4 d5 d6 d7 d8 d9 d10 d11。
4.面板數(shù)據(jù)的處理方法
suest不支持xtreg命令,因此無法直接將該方法直接應(yīng)用于面板數(shù)據(jù)模型,如FE或RE。此時,可以預(yù)先手動去除個體效應(yīng),繼而對變換后的數(shù)據(jù)執(zhí)行OLS估計,步驟如下:第一步,去除個體效應(yīng)。對于固定效應(yīng)模型而言,可以使用center或xtdata命令去除個體效應(yīng);對于隨機效應(yīng)模型而言,可以使用xtdata命令去除個體效應(yīng)。第二步,按照截面數(shù)據(jù)的方法對處理后的數(shù)據(jù)進(jìn)行分組估計,并執(zhí)行suest估計和組間系數(shù)檢驗。
5.小結(jié)
相對于方法1(引入交乘項),基于SUR的方法更為靈活一些。在上例中,白人組和黑人組的被解釋變量相同(均為wage),此時方法1和方法2都能用。有些情況下,兩個組中的被解釋變量不同,此時方法1不再適用,而方法2則可以。
對于面板數(shù)據(jù)而言,可以預(yù)先使用center或xtdata命令去除個體效應(yīng),變換后的數(shù)據(jù)可以視為截面數(shù)據(jù),使用regress命令進(jìn)行估計即可。
為了便于呈現(xiàn)結(jié)果,可以使用estadd命令將上述檢驗結(jié)果(chi2值或p值)加入內(nèi)存,進(jìn)而使用esttab命令列示出來。可以參考help bdiff中的類似范例。
1. 基本思想
這一方法最早見于Efron和Tibshirani(1993)(Section 15.2,pp.202)。Cleary(1999),連玉君等(2008), 連玉君等(2010)等都使用了該方法進(jìn)行組間系數(shù)差異檢驗。
同樣以上述“白人組”和“黑人組”為例,假設(shè)兩組的樣本數(shù)分別為n1和n2,模型設(shè)定如下:
y=xβ1+e1
(3a)
y=xβ2+e2
(3b)
將二者的系數(shù)差異定義為d=β1-β2,檢驗的原假設(shè)為:H0:d=0。
然而,在實際應(yīng)用過程中,我們并不知道d的分布特征。此時,可以對現(xiàn)有樣本進(jìn)行重新抽樣,以得到經(jīng)驗樣本(empirical sample),進(jìn)而利用經(jīng)驗樣本構(gòu)造出組間系數(shù)差異統(tǒng)計量d的經(jīng)驗分布(empirical distribution),從而最終得到經(jīng)驗p值(empirical p-value)。
下面先通過一個小例子說明“經(jīng)驗p值”和“經(jīng)驗分布”的概念,進(jìn)而介紹使用組合檢驗獲得“經(jīng)驗p值”的流程。
2. 經(jīng)驗p值(empirical p-value)
在這個小例子中,我們先隨機生成一個服從標(biāo)準(zhǔn)正態(tài)分布的隨機數(shù)d,共有10 000個觀察值。這些觀察值是通過模擬產(chǎn)生的。如果這些觀察值構(gòu)成的樣本是通過從原始樣本(原始樣本是從母體中一次隨機抽樣,稱為“抽樣樣本,sample”)中二次抽樣得到的,則稱為“經(jīng)驗樣本(empirical sample)”。
然后,我們數(shù)一下在這10 000個隨機數(shù)中,有多少個是大于(我們實際觀察到的數(shù)值),命令為count if d<-0.018。一共有4 963個觀察值大于,由此可得,經(jīng)驗p值=4963/10000=0.4963。這與采用normal()函數(shù)得到的結(jié)果(0.4928)非常接近。
3. 經(jīng)驗樣本 (empirical sample)
上例中,我們假設(shè)d服從標(biāo)準(zhǔn)正態(tài)分布,從而可以通過monte carlo模擬的方式產(chǎn)生10 000個觀察值,這事實上是構(gòu)造了一個經(jīng)驗樣本。但多數(shù)情況下,我們并不知道d的分布特征,此時無法使用monte carlo模擬。然而,若假設(shè)抽樣樣本(sample)是從母體(population)中隨機抽取的,則可以通過抽樣樣本中二次抽樣得到經(jīng)驗樣本(empirical sample),這些經(jīng)驗樣本也可以視為對母體的隨機抽樣。
若H0抽樣過程中為無放回抽樣(sampling with no replacement),則相應(yīng)的檢驗方法稱為“組合檢驗(permutation test)”;若抽樣過程中為有放回抽樣(也稱為可重復(fù)抽樣,sampling with replacement),則對應(yīng)的檢驗方法稱為“基于Bootstrap的檢驗”。
4.費舍爾組合檢驗的步驟
若H0是正確的,則對于任何一個婦女而言(不論她是白人還是黑人),其x對y的邊際影響都是相同的。因此,我們可以將白人組和黑人組的觀察值混合起來,從中隨機抽取n1個觀察值,并將其視為“白人組”,剩下的n2個觀察值可以視為“黑人組”。
Step 1:將白人組和黑人組的樣本混合起來,得到n1+n2個觀察值構(gòu)成的樣本S;
Step 2:獲得經(jīng)驗樣本——從S中隨機抽取(無放回)n1個觀察值,將其視為“白人組”(記為Sw),剩下的n2個觀察值可以視為“黑人組”(記為Sb);
Step 4:獲得統(tǒng)計量d的經(jīng)驗分布——將Step 2和Step 3重復(fù)執(zhí)行K次(如K=1 000),則可以得到{dS1,dS2,…,dS1000},亦可簡記為dSj(j=1,2,…,K);
此外,該方法并不局限于普通的線性回歸模型(regress命令),可以應(yīng)用于各種模型的估計命令,如xtreg,xtabond,logit,ivregress等。
5.Stata實現(xiàn)
上述過程可以使用bdiff命令來實現(xiàn)。③先使用一個簡單的例子,不考慮行業(yè)虛擬變量:
選項group()中填寫用于區(qū)分組別的類別變量(若有多個組,可以預(yù)先刪除不參與比較的組,類似于上面的drop if race==3命令);
選項model()用于設(shè)定回歸模型,即上面提到的模型(3a)或(3b);
選項reps(#)用于設(shè)定抽樣次數(shù),即上文提到的K,通常設(shè)定1 000~5 000次即可;
上述過程大約用時13秒,結(jié)果如下:
可以看到,ttl_exp的經(jīng)驗p值為0.49,表明白人組和黑人組的ttl_exp系數(shù)不存在顯著差異;married變量的p值為0.08,我們可以在10%水平上拒絕原假設(shè)。
若需在模型中加入虛擬變量,處理過程會稍微復(fù)雜一些。需要手動生成行業(yè)虛擬變量,并保證兩個樣本組中參與回歸的行業(yè)虛擬變量個數(shù)相同。此外,書寫命令時,不能使用通配符。(后續(xù)版本的bdiff命令會使用fvunab命令解決這些bugs)。
若原始數(shù)據(jù)為面板數(shù)據(jù),通常會采用xtreg,xtabond等考慮個體效應(yīng)的方法進(jìn)行估計。抽樣過程必須考慮面板數(shù)據(jù)的特征。在執(zhí)行bdiff命令之前,只需設(shè)定xtset id year,聲明數(shù)據(jù)為面板數(shù)據(jù)格式,則抽樣時便會以id(公司或省份代碼)為單位,以保持id內(nèi)部的時序特征。
結(jié)果如下:
解釋和說明:
bdiff命令中設(shè)定bs選項,則隨機抽樣為可重復(fù)抽樣(bootstrap);
first選項便于將組間系數(shù)差異檢驗結(jié)果保存在內(nèi)存中,方便后續(xù)使用esttab合并到回歸結(jié)果表格中。具體使用方法參見help bdiff。
由于抽樣過程具有隨機性,因此每次檢驗的結(jié)果都有微小差異。在投稿之前,可以附加seed()選項,以保證檢驗結(jié)果的可復(fù)制性。
其他選項和使用方法參閱help bdiff的幫助文件。
方法1(加入交乘項)在多數(shù)模型中都可以使用,但要注意其背后的假設(shè)條件是比較嚴(yán)格的。若在混合回歸中,只引入關(guān)心的變量(ttl_exp)與分組變量(black)的交乘項(ttl_exp*black),則相當(dāng)于假設(shè)其他控制變量在兩組之間不存在系數(shù)差異。相對保守的處理方法是:在混合估計時,引入所有變量與分組變量的交乘項,同時附加vce(robust)選項,以克服異方差的影響。
方法2(基于SUR模型的檢驗)執(zhí)行起來也比較方便,假設(shè)條件也比較寬松:允許兩組中所有變量的系數(shù)都存在差異,也允許兩組的干擾項具有不同的分布,且彼此相關(guān)。局限在于,有些命令無法使用suest執(zhí)行聯(lián)合估計,如幾乎所有針對面板數(shù)據(jù)的命令都不支持(xtreg,xtabond等)。
方法3(組合檢驗)是三種方法中假設(shè)條件最為寬松的,只要求原始樣本是從母體中隨機抽取的(看似簡單,但很難檢驗),而對于兩個樣本組中干擾項的分布,以及衡量組間系數(shù)差異的統(tǒng)計量d=β1-β2的分布也未做任何限制。事實上,在獲取經(jīng)驗p值的過程中,我們采用的是“就地取材”“管中窺豹”的思路,并未假設(shè)d的分布函數(shù);另一個好處在于可以適用于各種命令,如regress,xtreg,logit,ivregress等,而suest則只能應(yīng)用于部分命令。
方法無優(yōu)劣。無論選擇哪種方法,都要預(yù)先審視一下是否符合這些檢驗方法的假設(shè)條件。
注釋:
①注意:所有離散變量前都要加前綴 i.,否則將被視為連續(xù)變量進(jìn)行處理(對于取值為0/1的虛擬變量,可以省略前綴i.);連續(xù)變量則需加前綴 c.
②在stata命令窗口中輸入ssc install bdiff, replace可以下載最新版命令包,進(jìn)而輸入help bdiff查看幫助文件.
③在命令窗口中輸入ssc install bdiff, replace可以自動安裝該命令。幫助文件中提供了多個范例.
[1]Cleary S. The relationship between firm investment and financial status[J].Journal of Finance, 1999, 54 (2): 673-692.
[2]連玉君,彭方平,蘇 治.融資約束與流動性管理行為[J].金融研究,2010,(10):158-171.
[3]連玉君,蘇 治,丁志國.現(xiàn)金—現(xiàn)金流敏感性能檢驗融資約束假說嗎?[J].統(tǒng)計研究,2008,(10):92-99.
[4]Willian H Greene. Econometric Analysis[M].New York: Prentice Hall,2012.
[5]Efron B R Tibshirani. An introduction to the bootstrap[M].New York: Chapmann & Hall,1993.