Last active
September 10, 2015 18:55
-
-
Save matthieugomez/1878332e7073bd602079 to your computer and use it in GitHub Desktop.
trace for hdfe
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
noi ds *, d | |
.... | |
storage display value | |
variable name type format label variable label | |
-------------------------------------------------------------------------------------------------- | |
DetailedSecur~e str27 %27s (firstnm) DetailedSecurityType | |
year float %8.0g | |
insurer str36 %36s | |
DeltaVincome_~s double %9.0g | |
DeltaVincome_~l float %9.0g | |
DeltaVTreasur~s float %9.0g | |
DeltaVTreasur~l float %9.0g | |
PDeltaQ_class float %9.0g | |
PDeltaQ_total float %9.0g | |
duration_class float %9.0g | |
count_class float %9.0g | |
count_both_cl~s float %9.0g | |
tag_class byte %8.0g tag(insurer year DetailedSecurityType) | |
R_class float %9.0g | |
RTreasury_class float %9.0g | |
XR_class float %9.0g | |
DeltaVinc~s0298 float %9.0g | |
DeltaVinc~l0298 float %9.0g | |
DeltaVTre~s0298 float %9.0g | |
DeltaVTre~l0298 float %9.0g | |
PDeltaQ_cl~0298 float %9.0g | |
PDeltaQ_to~0298 float %9.0g | |
duration_c~0298 float %9.0g | |
count_class0298 float %9.0g | |
count_both~0298 float %9.0g | |
R_class0298 float %9.0g | |
RTreasury_~0298 float %9.0g | |
XR_class0298 float %9.0g | |
DeltaVinc~s0595 float %9.0g | |
DeltaVinc~l0595 float %9.0g | |
DeltaVTre~s0595 float %9.0g | |
DeltaVTre~l0595 float %9.0g | |
PDeltaQ_cl~0595 float %9.0g | |
PDeltaQ_to~0595 float %9.0g | |
duration_c~0595 float %9.0g | |
count_class0595 float %9.0g | |
count_both~0595 float %9.0g | |
R_class0595 float %9.0g | |
RTreasury_~0595 float %9.0g | |
XR_class0595 float %9.0g | |
DeltaVinc~s1090 float %9.0g | |
DeltaVinc~l1090 float %9.0g | |
DeltaVTre~s1090 float %9.0g | |
DeltaVTre~l1090 float %9.0g | |
PDeltaQ_cl~1090 float %9.0g | |
PDeltaQ_to~1090 float %9.0g | |
duration_c~1090 float %9.0g | |
count_class1090 float %9.0g | |
count_both~1090 float %9.0g | |
R_class1090 float %9.0g | |
RTreasury_~1090 float %9.0g | |
XR_class1090 float %9.0g | |
DeltaVinc~s2575 float %9.0g | |
DeltaVinc~l2575 float %9.0g | |
DeltaVTre~s2575 float %9.0g | |
DeltaVTre~l2575 float %9.0g | |
PDeltaQ_cl~2575 float %9.0g | |
PDeltaQ_to~2575 float %9.0g | |
duration_c~2575 float %9.0g | |
count_class2575 float %9.0g | |
count_both~2575 float %9.0g | |
R_class2575 float %9.0g | |
RTreasury_~2575 float %9.0g | |
XR_class2575 float %9.0g | |
Zf1_class float %9.0g Return residual w.r.t 1 factor | |
Zf2_class float %9.0g Return residual w.r.t 2 factor | |
Zfe1_class double %9.0g Return residual w.r.t 1 fixed effect | |
Zfe2_class double %9.0g Return residual w.r.t 1 fixed effect | |
XZf1_class float %9.0g Return residual w.r.t 1 factor | |
XZf2_class float %9.0g Return residual w.r.t 2 factor | |
XZfe1_class double %9.0g Return residual w.r.t 1 fixed effect | |
XZfe2_class double %9.0g Return residual w.r.t 1 fixed effect | |
tag_insurer byte %8.0g tag(insurer year) | |
classweight float %9.0g | |
N_insurers float %9.0g | |
meanclassweight float %9.0g | |
assets_all float %9.0g | |
vwmeanclasswe~t float %9.0g | |
idioclassweight float %9.0g | |
R_insurer float %9.0g | |
R_insurer_fw float %9.0g | |
R_insurer_ew float %9.0g | |
R_class_mean float %9.0g | |
R_insurer_fwfr float %9.0g | |
R_insurer_iwfr float %9.0g | |
XR_insurer float %9.0g | |
XR_insurer_fw float %9.0g | |
XR_insurer_ew float %9.0g | |
XR_class_mean float %9.0g | |
XR_insurer_fwfr float %9.0g | |
XR_insurer_iwfr float %9.0g | |
Zf1_insurer float %9.0g | |
Zf1_insurer_fw float %9.0g | |
Zf1_insurer_ew float %9.0g | |
Zf1_class_mean float %9.0g | |
Zf1_insurer_f~r float %9.0g | |
Zf1_insurer_i~r float %9.0g | |
Zf2_insurer float %9.0g | |
Zf2_insurer_fw float %9.0g | |
Zf2_insurer_ew float %9.0g | |
Zf2_class_mean float %9.0g | |
Zf2_insurer_f~r float %9.0g | |
Zf2_insurer_i~r float %9.0g | |
Zfe1_insurer float %9.0g | |
Zfe1_insurer_fw float %9.0g | |
Zfe1_insurer_ew float %9.0g | |
Zfe1_class_mean float %9.0g | |
Zfe1_insur~fwfr float %9.0g | |
Zfe1_insur~iwfr float %9.0g | |
Zfe2_insurer float %9.0g | |
Zfe2_insurer_fw float %9.0g | |
Zfe2_insurer_ew float %9.0g | |
Zfe2_class_mean float %9.0g | |
Zfe2_insur~fwfr float %9.0g | |
Zfe2_insur~iwfr float %9.0g | |
XZf1_insurer float %9.0g | |
XZf1_insurer_fw float %9.0g | |
XZf1_insurer_ew float %9.0g | |
XZf1_class_mean float %9.0g | |
XZf1_insur~fwfr float %9.0g | |
XZf1_insur~iwfr float %9.0g | |
XZf2_insurer float %9.0g | |
XZf2_insurer_fw float %9.0g | |
XZf2_insurer_ew float %9.0g | |
XZf2_class_mean float %9.0g | |
XZf2_insur~fwfr float %9.0g | |
XZf2_insur~iwfr float %9.0g | |
XZfe1_insurer float %9.0g | |
XZfe1_insure~fw float %9.0g | |
XZfe1_insure~ew float %9.0g | |
XZfe1_class_m~n float %9.0g | |
XZfe1_insu~fwfr float %9.0g | |
XZfe1_insu~iwfr float %9.0g | |
XZfe2_insurer float %9.0g | |
XZfe2_insure~fw float %9.0g | |
XZfe2_insure~ew float %9.0g | |
XZfe2_class_m~n float %9.0g | |
XZfe2_insu~fwfr float %9.0g | |
XZfe2_insu~iwfr float %9.0g | |
DeltaV_class double %16.0fc (sum) DeltaV | |
AnnualIncome_~s double %16.0fc (sum) AnnualIncome | |
DetailedSecur~n long %27.0g DetailedSecurityType_n | |
(firstnm) DetailedSecurityType | |
insurer_n long %35.0g insurer_n | |
id float %9.0g group(insurer DetailedSecurityType_n) | |
DeltaVDeriv_t~l float %9.0g | |
DeltaVInclDer~l float %9.0g | |
cusiptocompus~e float %9.0g CUSIP-level Total Share of Compustat Assets | |
Excluding Separate Accounts | |
totsepact float %9.0g Separate, segregated, protected accounts (from | |
Summary files) | |
at double %18.0g Compustat Assets | |
lt double %18.0g Liabilities - Total | |
summarytocomp~e float %9.0g Summary File Assets Total to Compustat Assets Total | |
assshare_mean float %9.0g | |
book_leverage float %9.0g | |
permno double %12.0g CRSP PERMANENT NUMBER | |
ticker str6 %6s EXCHANGE TICKER SYMBOL - HISTORICAL | |
comnam str32 %32s COMPANY NAME - HISTORICAL | |
market_cap float %9.0g (firstnm) market_cap | |
ln_ret double %9.0g (sum) ln_ret | |
trading_days long %12.0g (count) permco | |
stock_return float %9.0g | |
DeltaEquity float %9.0g Change in equity value | |
EntityName str47 %47s EntityName | |
_merge byte %23.0g _merge | |
market_leverage float %9.0g | |
portfolio_lev~e float %9.0g | |
R_reg float %9.0g | |
R_unlever float %9.0g | |
R_reg_deriv float %9.0g | |
R_reg_fw float %9.0g | |
R_unlever_fw float %9.0g | |
R_reg_fw_deriv float %9.0g | |
XR_reg float %9.0g | |
XR_unlever float %9.0g | |
XR_reg_deriv float %9.0g | |
XR_reg_fw float %9.0g | |
XR_unlever_fw float %9.0g | |
XR_reg_fw_deriv float %9.0g | |
Zf1_reg float %9.0g | |
Zf1_unlever float %9.0g | |
Zf1_reg_deriv float %9.0g | |
Zf1_reg_fw float %9.0g | |
Zf1_unlever_fw float %9.0g | |
Zf1_reg_fw_de~v float %9.0g | |
Zf2_reg float %9.0g | |
Zf2_unlever float %9.0g | |
Zf2_reg_deriv float %9.0g | |
Zf2_reg_fw float %9.0g | |
Zf2_unlever_fw float %9.0g | |
Zf2_reg_fw_de~v float %9.0g | |
Zfe1_reg float %9.0g | |
Zfe1_unlever float %9.0g | |
Zfe1_reg_deriv float %9.0g | |
Zfe1_reg_fw float %9.0g | |
Zfe1_unlever_fw float %9.0g | |
Zfe1_reg_fw_d~v float %9.0g | |
Zfe2_reg float %9.0g | |
Zfe2_unlever float %9.0g | |
Zfe2_reg_deriv float %9.0g | |
Zfe2_reg_fw float %9.0g | |
Zfe2_unlever_fw float %9.0g | |
Zfe2_reg_fw_d~v float %9.0g | |
XZf1_reg float %9.0g | |
XZf1_unlever float %9.0g | |
XZf1_reg_deriv float %9.0g | |
XZf1_reg_fw float %9.0g | |
XZf1_unlever_fw float %9.0g | |
XZf1_reg_fw_d~v float %9.0g | |
XZf2_reg float %9.0g | |
XZf2_unlever float %9.0g | |
XZf2_reg_deriv float %9.0g | |
XZf2_reg_fw float %9.0g | |
XZf2_unlever_fw float %9.0g | |
XZf2_reg_fw_d~v float %9.0g | |
XZfe1_reg float %9.0g | |
XZfe1_unlever float %9.0g | |
XZfe1_reg_deriv float %9.0g | |
XZfe1_reg_fw float %9.0g | |
XZfe1_unlever~w float %9.0g | |
XZfe1_reg_fw_~v float %9.0g | |
XZfe2_reg float %9.0g | |
XZfe2_unlever float %9.0g | |
XZfe2_reg_deriv float %9.0g | |
XZfe2_reg_fw float %9.0g | |
XZfe2_unlever~w float %9.0g | |
XZfe2_reg_fw_~v float %9.0g | |
coverage float %9.0g | |
yellow float %9.0g | |
logmarket_lev~e float %9.0g | |
__000000 long %12.0g | |
__000001 byte %8.0g | |
__000002 double %10.0g | |
__000003 double %10.0g | |
__000004 double %10.0g | |
__000005 double %10.0g | |
__000006 double %10.0g | |
__000007 double %10.0g | |
__000008 double %10.0g | |
__000009 double %10.0g | |
__00000A double %10.0g | |
__00000B double %10.0g | |
.... | |
- qui hdfe `y' `x' if `touse' `wt', a(`absorbvars') gen(`prefix') sample(`sample') | |
= qui hdfe DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 __000009 _ | |
> _00000A __00000B if __000001 , a(insurer_n year) gen(__00000L) sample(__00000K) | |
------------------------------------------------------------------------------- begin hdfe --- | |
- version `=clip(`c(version)', 11.2, 13.1)' | |
= version 12 | |
- cap syntax, version | |
- if !c(rc) { | |
Version | |
exit | |
} | |
- syntax anything(everything) [fw aw pw/], [*] [CACHE(string) VCE(string) CLUSTER(string) FAST | |
> ] Absorb(string) [ CLUSTERVars(string) Generate(name) SAMPLE(name) CLEAR KEEPIDs KEEPVars(varlis | |
> t) ] | |
- Assert "`cache'"=="", msg("invalid option {cmd:cache()}") | |
= Assert ""=="", msg("invalid option {cmd:cache()}") | |
---------------------------------------------------------------------- begin hdfe.Assert --- | |
- syntax anything(everything equalok) [, MSG(string asis) RC(integer 198)] | |
- if !(`anything') { | |
= if !(""=="") { | |
di as error `msg' | |
exit `rc' | |
} | |
------------------------------------------------------------------------ end hdfe.Assert --- | |
- Assert "`vce'"=="", msg("invalid option {cmd:vce()}") | |
= Assert ""=="", msg("invalid option {cmd:vce()}") | |
---------------------------------------------------------------------- begin hdfe.Assert --- | |
- syntax anything(everything equalok) [, MSG(string asis) RC(integer 198)] | |
- if !(`anything') { | |
= if !(""=="") { | |
di as error `msg' | |
exit `rc' | |
} | |
------------------------------------------------------------------------ end hdfe.Assert --- | |
- Assert "`fast'"=="", msg("invalid option {cmd:fast()}") | |
= Assert ""=="", msg("invalid option {cmd:fast()}") | |
---------------------------------------------------------------------- begin hdfe.Assert --- | |
- syntax anything(everything equalok) [, MSG(string asis) RC(integer 198)] | |
- if !(`anything') { | |
= if !(""=="") { | |
di as error `msg' | |
exit `rc' | |
} | |
------------------------------------------------------------------------ end hdfe.Assert --- | |
- Assert "`cluster'"=="", msg("invalid option {cmd:cluster()}, perhaps you meant {opt clusterv | |
> :ars()}?") | |
= Assert ""=="", msg("invalid option {cmd:cluster()}, perhaps you meant {opt clusterv:ars()}?" | |
> ) | |
---------------------------------------------------------------------- begin hdfe.Assert --- | |
- syntax anything(everything equalok) [, MSG(string asis) RC(integer 198)] | |
- if !(`anything') { | |
= if !(""=="") { | |
di as error `msg' | |
exit `rc' | |
} | |
------------------------------------------------------------------------ end hdfe.Assert --- | |
- Assert ("`generate'"!="") + ("`clear'"!="") == 1 , msg("hdfe error: you need to specify one | |
> and only one of the following options: clear generate(...)") | |
= Assert ("__00000L"!="") + (""!="") == 1 , msg("hdfe error: you need to specify one and only | |
> one of the following options: clear generate(...)") | |
---------------------------------------------------------------------- begin hdfe.Assert --- | |
- syntax anything(everything equalok) [, MSG(string asis) RC(integer 198)] | |
- if !(`anything') { | |
= if !(("__00000L"!="") + (""!="") == 1) { | |
di as error `msg' | |
exit `rc' | |
} | |
------------------------------------------------------------------------ end hdfe.Assert --- | |
- if ("`clear'"!="") Assert "`sample'"=="", msg("option {cmd:sample()} not compatible with {cm | |
> d:clear}") | |
= if (""!="") Assert "__00000K"=="", msg("option {cmd:sample()} not compatible with {cmd:clear | |
> }") | |
- if ("`generate'"!="") Assert "`keepids'"=="", msg("option {cmd:keepids} not compatible with | |
> {cmd:generate()}") | |
= if ("__00000L"!="") Assert ""=="", msg("option {cmd:keepids} not compatible with {cmd:genera | |
> te()}") | |
---------------------------------------------------------------------- begin hdfe.Assert --- | |
- syntax anything(everything equalok) [, MSG(string asis) RC(integer 198)] | |
- if !(`anything') { | |
= if !(""=="") { | |
di as error `msg' | |
exit `rc' | |
} | |
------------------------------------------------------------------------ end hdfe.Assert --- | |
- if ("`generate'"!="") Assert "`keepvars'"=="", msg("option {cmd:keepvars()} not compatible w | |
> ith {cmd:generate()}") | |
= if ("__00000L"!="") Assert ""=="", msg("option {cmd:keepvars()} not compatible with {cmd:gen | |
> erate()}") | |
---------------------------------------------------------------------- begin hdfe.Assert --- | |
- syntax anything(everything equalok) [, MSG(string asis) RC(integer 198)] | |
- if !(`anything') { | |
= if !(""=="") { | |
di as error `msg' | |
exit `rc' | |
} | |
------------------------------------------------------------------------ end hdfe.Assert --- | |
- cap drop __ID*__ | |
- cap drop __CL*__ | |
- if ("`keepvars'"!="") { | |
= if (""!="") { | |
qui ds `keepvars' | |
local keepvars `r(varlist)' | |
} | |
- local 0 `partial' `anything' [`weight'`exp'] , absorb(`absorb') `options' cluster(`clusterva | |
> rs') cache(save, keepvars(`keepvars')) | |
= local 0 DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 __000009 | |
> __00000A __00000B if __000001 [] , absorb(insurer_n year) cluster() cache(save, keepvars()) | |
- ereturn clear | |
- cap noi { | |
- Parse `0' | |
= Parse DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 __000009 __ | |
> 00000A __00000B if __000001 [] , absorb(insurer_n year) cluster() cache(save, keepvars()) | |
----------------------------------------------------------------------- begin hdfe.Parse --- | |
- mata: st_local("cmdline", stritrim(`"reghdfe `0'"') ) | |
= mata: st_local("cmdline", stritrim(`"reghdfe DeltaEquity __000002 __000003 __000004 __0000 | |
> 05 __000006 __000007 __000008 __000009 __00000A __00000B if __000001 [] , absorb(insurer_n year) | |
> cluster() cache(save, keepvars())"') ) | |
- syntax anything(id="varlist" name=0 equalok) [if] [in] [aw pw fw/] , Absorb(string) [ RESi | |
> duals(name) SUBOPTions(string) VCE(string) CLuster(string) ESTimator(string) STAGEs(string) FFir | |
> st IVsuite(string) Verbose(string) TIMEit TOLerance(string) MAXITerations(string) POOLsize(strin | |
> g) ACCELeration(string) TRAnsform(string) CACHE(string) FAST DOFadjustments(string) GROUPVar(nam | |
> e) KEEPSINgletons NOTES(string) ] [*] | |
- local allkeys cmdline if in timeit | |
- local timeit = "`timeit'"!="" | |
= local timeit = ""!="" | |
- local fast = "`fast'"!="" | |
= local fast = ""!="" | |
- local ffirst = "`ffirst'"!="" | |
= local ffirst = ""!="" | |
- if ("`cluster'"!="") { | |
= if (""!="") { | |
Assert ("`vce'"==""), msg("cannot specify both cluster() and vce()") | |
local vce cluster `cluster' | |
local cluster | |
} | |
- ParseCache, cache(`cache') ifin(`if'`in') absorb(`absorb') vce(`vce') | |
= ParseCache, cache(save, keepvars()) ifin(if __000001 ) absorb(insurer_n year) vce() | |
- local keys savecache keepvars usecache | |
- foreach key of local keys { | |
- local `key' "`s(`key')'" | |
= local savecache "1" | |
- } | |
- local `key' "`s(`key')'" | |
= local keepvars "" | |
- } | |
- local `key' "`s(`key')'" | |
= local usecache "0" | |
- } | |
- local allkeys `allkeys' `keys' | |
= local allkeys cmdline if in timeit savecache keepvars usecache | |
- ParseIV `0', estimator(`estimator') ivsuite(`ivsuite') | |
= ParseIV DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 __00000 | |
> 9 __00000A __00000B, estimator() ivsuite() | |
- local keys subcmd model ivsuite estimator depvar indepvars endogvars instruments fe_format | |
> basevars | |
- foreach key of local keys { | |
- local `key' "`s(`key')'" | |
= local subcmd "regress" | |
- } | |
- local `key' "`s(`key')'" | |
= local model "ols" | |
- } | |
- local `key' "`s(`key')'" | |
= local ivsuite "" | |
- } | |
- local `key' "`s(`key')'" | |
= local estimator "" | |
- } | |
- local `key' "`s(`key')'" | |
= local depvar "DeltaEquity" | |
- } | |
- local `key' "`s(`key')'" | |
= local indepvars "__000002 __000003 __000004 __000005 __000006 __000007 __000008 __000009 _ | |
> _00000A __00000B" | |
- } | |
- local `key' "`s(`key')'" | |
= local endogvars "" | |
- } | |
- local `key' "`s(`key')'" | |
= local instruments "" | |
- } | |
- local `key' "`s(`key')'" | |
= local fe_format "%9.0g" | |
- } | |
- local `key' "`s(`key')'" | |
= local basevars "DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 | |
> __000009 __00000A __00000B" | |
- } | |
- local allkeys `allkeys' `keys' | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars | |
- if ("`weight'"!="") { | |
= if (""!="") { | |
local weightvar `exp' | |
local weighttype `weight' | |
local weightexp [`weight'=`weightvar'] | |
confirm var `weightvar', exact | |
local num_type = cond("`weight'"=="fweight", "integers", "reals") | |
local basenote "weight {res}`weightvar'{txt} can only contain strictly positive `num_type' | |
> , but" | |
qui cou if `weightvar'<0 | |
Assert (`r(N)'==0), msg("`basenote' `r(N)' negative values were found!") rc(402) | |
qui cou if `weightvar'==0 | |
if (`r(N)'>0) di as text "`basenote' `r(N)' zero values were found (will be dropped)" | |
qui cou if `weightvar'>=. | |
if (`r(N)'>0) di as text "`basenote' `r(N)' missing values were found (will be dropped)" | |
if ("`weight'"=="fweight") { | |
qui cou if mod(`weightvar',1) & `weightvar'<. | |
Assert (`r(N)'==0), msg("`basenote' `r(N)' non-integer values were found!") rc(401) | |
} | |
} | |
- local allkeys `allkeys' weightvar weighttype weightexp | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp | |
- if (!`usecache') { | |
= if (!0) { | |
- ParseAbsvars `absorb' | |
= ParseAbsvars insurer_n year | |
- local absorb_keepvars `r(all_ivars)' `r(all_cvars)' | |
= local absorb_keepvars insurer_n year | |
- local N_hdfe `r(G)' | |
= local N_hdfe 2 | |
- mata: HDFE_S = map_init() | |
- local will_save_fe = `r(will_save_fe)' | |
= local will_save_fe = 0 | |
- local original_absvars = "`r(original_absvars)'" | |
= local original_absvars = "insurer_n year" | |
- local extended_absvars = "`r(extended_absvars)'" | |
= local extended_absvars = "insurer_n year" | |
- local equation_d = "`r(equation_d)'" | |
= local equation_d = "" | |
- } | |
- else { | |
local will_save_fe 0 | |
local original_absvars : char _dta[original_absvars] | |
local extended_absvars : char _dta[extended_absvars] | |
local equation_d | |
local N_hdfe : char _dta[N_hdfe] | |
} | |
- local allkeys `allkeys' absorb_keepvars N_hdfe will_save_fe original_absvars extended_absv | |
> ars equation_d | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d | |
- if ("`weightvar'"!="" & !`usecache') mata: map_init_weights(HDFE_S, "`weightvar'", "`weigh | |
> ttype'") | |
= if (""!="" & !0) mata: map_init_weights(HDFE_S, "", "") | |
- local panelvar `_dta[_TSpanel]' | |
= local panelvar id | |
- local timevar `_dta[_TStvar]' | |
= local timevar year | |
- if ("`panelvar'"!="") { | |
= if ("id"!="") { | |
- cap conf var `panelvar' | |
= cap conf var id | |
- if (c(rc)==111) local panelvar | |
- } | |
- if ("`timevar'"!="") { | |
= if ("year"!="") { | |
- cap conf var `timevar' | |
= cap conf var year | |
- if (c(rc)==111) local timevar | |
- } | |
- local optlist transform acceleration panelvar timevar | |
- foreach opt of local optlist { | |
- if ("``opt''"!="" & !`usecache') mata: map_init_`opt'(HDFE_S, "``opt''") | |
= if (""!="" & !0) mata: map_init_transform(HDFE_S, "") | |
- } | |
- if ("``opt''"!="" & !`usecache') mata: map_init_`opt'(HDFE_S, "``opt''") | |
= if (""!="" & !0) mata: map_init_acceleration(HDFE_S, "") | |
- } | |
- if ("``opt''"!="" & !`usecache') mata: map_init_`opt'(HDFE_S, "``opt''") | |
= if ("id"!="" & !0) mata: map_init_panelvar(HDFE_S, "id") | |
- } | |
- if ("``opt''"!="" & !`usecache') mata: map_init_`opt'(HDFE_S, "``opt''") | |
= if ("year"!="" & !0) mata: map_init_timevar(HDFE_S, "year") | |
- } | |
- local allkeys `allkeys' `optlist' | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar | |
- if ("`groupvar'"!="") mata: map_init_groupvar(HDFE_S, "`groupvar'") | |
= if (""!="") mata: map_init_groupvar(HDFE_S, "") | |
- local keepsingletons = ("`keepsingletons'"!="") | |
= local keepsingletons = (""!="") | |
- local optlist poolsize verbose tolerance maxiterations keepsingletons timeit | |
- foreach opt of local optlist { | |
- if ( "``opt''"!="" & (!`usecache' | "`opt'"=="verbose") ) mata: map_init_`opt'(HDFE_S, ``o | |
> pt'') | |
= if ( ""!="" & (!0 | "poolsize"=="verbose") ) mata: map_init_poolsize(HDFE_S, ) | |
- } | |
- if ( "``opt''"!="" & (!`usecache' | "`opt'"=="verbose") ) mata: map_init_`opt'(HDFE_S, ``o | |
> pt'') | |
= if ( ""!="" & (!0 | "verbose"=="verbose") ) mata: map_init_verbose(HDFE_S, ) | |
- } | |
- if ( "``opt''"!="" & (!`usecache' | "`opt'"=="verbose") ) mata: map_init_`opt'(HDFE_S, ``o | |
> pt'') | |
= if ( ""!="" & (!0 | "tolerance"=="verbose") ) mata: map_init_tolerance(HDFE_S, ) | |
- } | |
- if ( "``opt''"!="" & (!`usecache' | "`opt'"=="verbose") ) mata: map_init_`opt'(HDFE_S, ``o | |
> pt'') | |
= if ( ""!="" & (!0 | "maxiterations"=="verbose") ) mata: map_init_maxiterations(HDFE_S, ) | |
- } | |
- if ( "``opt''"!="" & (!`usecache' | "`opt'"=="verbose") ) mata: map_init_`opt'(HDFE_S, ``o | |
> pt'') | |
= if ( "0"!="" & (!0 | "keepsingletons"=="verbose") ) mata: map_init_keepsingletons(HDFE_S, | |
> 0) | |
- } | |
- if ( "``opt''"!="" & (!`usecache' | "`opt'"=="verbose") ) mata: map_init_`opt'(HDFE_S, ``o | |
> pt'') | |
= if ( "0"!="" & (!0 | "timeit"=="verbose") ) mata: map_init_timeit(HDFE_S, 0) | |
- } | |
- local allkeys `allkeys' `optlist' | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit | |
- mata: verbose2local(HDFE_S, "verbose") | |
- local allkeys `allkeys' verbose | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose | |
- ParseStages, stages(`stages') model(`model') | |
= ParseStages, stages() model(ols) | |
- local stages "`s(stages)'" | |
= local stages "none" | |
- local stage_suboptions "`s(stage_suboptions)'" | |
= local stage_suboptions "" | |
- local savestages = `s(savestages)' | |
= local savestages = 1 | |
- local allkeys `allkeys' stages stage_suboptions savestages | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages | |
- local keys vceoption vcetype vcesuite vceextra num_clusters clustervars bw kernel dkraay k | |
> iefer twicerobust | |
- if (!`usecache') { | |
= if (!0) { | |
- mata: st_local("hascomma", strofreal(strpos("`vce'", ","))) | |
= mata: st_local("hascomma", strofreal(strpos("", ","))) | |
- local vcetmp `vce' | |
= local vcetmp | |
- if (!`hascomma') local vcetmp `vce' , | |
= if (!0) local vcetmp , | |
- ParseVCE `vcetmp' weighttype(`weighttype') ivsuite(`ivsuite') model(`model') | |
= ParseVCE , weighttype() ivsuite() model(ols) | |
- foreach key of local keys { | |
- local `key' "`s(`key')'" | |
= local vceoption "unadjusted" | |
- } | |
- local `key' "`s(`key')'" | |
= local vcetype "unadjusted" | |
- } | |
- local `key' "`s(`key')'" | |
= local vcesuite "default" | |
- } | |
- local `key' "`s(`key')'" | |
= local vceextra "" | |
- } | |
- local `key' "`s(`key')'" | |
= local num_clusters "0" | |
- } | |
- local `key' "`s(`key')'" | |
= local clustervars "" | |
- } | |
- local `key' "`s(`key')'" | |
= local bw "1" | |
- } | |
- local `key' "`s(`key')'" | |
= local kernel "" | |
- } | |
- local `key' "`s(`key')'" | |
= local dkraay "1" | |
- } | |
- local `key' "`s(`key')'" | |
= local kiefer "" | |
- } | |
- local `key' "`s(`key')'" | |
= local twicerobust "0" | |
- } | |
- } | |
- else { | |
foreach key of local keys { | |
local `key' : char _dta[`key'] | |
} | |
} | |
- local allkeys `allkeys' `keys' | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages vceoption vcetype vcesuite vceextra num_clusters clustervars bw | |
> kernel dkraay kiefer twicerobust | |
- local allkeys `allkeys' ffirst | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages vceoption vcetype vcesuite vceextra num_clusters clustervars bw | |
> kernel dkraay kiefer twicerobust ffirst | |
- if (`ffirst') Assert "`model'"!="ols", msg("ols does not support {cmd}ffirst") | |
= if (0) Assert "ols"!="ols", msg("ols does not support {cmd}ffirst") | |
- if (`ffirst') Assert "`ivsuite'"=="ivreg2", msg("option {cmd}ffirst{err} requires ivreg2") | |
= if (0) Assert ""=="ivreg2", msg("option {cmd}ffirst{err} requires ivreg2") | |
- if ("`clustervars'"!="" & !`usecache') mata: map_init_clustervars(HDFE_S, "`clustervars'") | |
= if (""!="" & !0) mata: map_init_clustervars(HDFE_S, "") | |
- if ("`vceextra'"!="" & !`usecache') mata: map_init_vce_is_hac(HDFE_S, 1) | |
= if (""!="" & !0) mata: map_init_vce_is_hac(HDFE_S, 1) | |
- if ("`dofadjustments'"=="") local dofadjustments all | |
= if (""=="") local dofadjustments all | |
- ParseDOF , `dofadjustments' | |
= ParseDOF , all | |
- local dofadjustments "`s(dofadjustments)'" | |
= local dofadjustments "pairwise clusters continuous" | |
- if ("`groupvar'"!="") conf new var `groupvar' | |
= if (""!="") conf new var | |
- local allkeys `allkeys' dofadjustments groupvar | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages vceoption vcetype vcesuite vceextra num_clusters clustervars bw | |
> kernel dkraay kiefer twicerobust ffirst dofadjustments groupvar | |
- if ("`residuals'"!="") { | |
= if (""!="") { | |
Assert !`will_save_fe', msg("option residuals() is mutually exclusive with saving fixed ef | |
> fects") | |
Assert !`savecache', msg("option residuals() is mutually exclusive with -savecache-") | |
conf new var `residuals' | |
local allkeys `allkeys' residuals | |
} | |
- local default_stats mean min max | |
- ParseImplicit, opt(SUmmarize) default(`default_stats') input(`options') syntax([namelist(n | |
> ame=stats)] , [QUIetly]) inject(stats quietly) | |
= ParseImplicit, opt(SUmmarize) default(mean min max) input() syntax([namelist(name=stats)] | |
> , [QUIetly]) inject(stats quietly) | |
- local summarize_quietly = ("`quietly'"!="") | |
= local summarize_quietly = (""!="") | |
- if ("`stats'"=="" & "`quietly'"!="") local stats `default_stats' | |
= if (""=="" & ""!="") local stats mean min max | |
- local allkeys `allkeys' stats summarize_quietly | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages vceoption vcetype vcesuite vceextra num_clusters clustervars bw | |
> kernel dkraay kiefer twicerobust ffirst dofadjustments groupvar stats summarize_quietly | |
- if (`fast' & ("`groupvar'"!="" | `will_save_fe'==1 | "`residuals'"!="")) { | |
= if (0 & (""!="" | 0==1 | ""!="")) { | |
di as error "(warning: option -fast- disabled; not allowed when saving variables: saving f | |
> ixed effects, mobility groups, residuals)" | |
local fast 0 | |
} | |
- local allkeys `allkeys' fast level | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages vceoption vcetype vcesuite vceextra num_clusters clustervars bw | |
> kernel dkraay kiefer twicerobust ffirst dofadjustments groupvar stats summarize_quietly fast lev | |
> el | |
- local nested = cond("`nested'"!="", 1, 0) | |
= local nested = cond(""!="", 1, 0) | |
- if (`nested' & !("`model'"=="ols" & "`vcetype'"=="unadjusted") ) { | |
= if (0 & !("ols"=="ols" & "unadjusted"=="unadjusted") ) { | |
di as error "-nested- not implemented currently" | |
Debug, level(0) msg("(option nested ignored, only works with OLS and conventional/unadjust | |
> ed VCE)") color("error") | |
} | |
- local allkeys `allkeys' nested | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages vceoption vcetype vcesuite vceextra num_clusters clustervars bw | |
> kernel dkraay kiefer twicerobust ffirst dofadjustments groupvar stats summarize_quietly fast lev | |
> el nested | |
- if (`savecache') { | |
= if (1) { | |
- Assert "`endogvars'`instruments'"=="", msg("cache(save) option requires a normal varlist, | |
> not an iv varlist") | |
= Assert ""=="", msg("cache(save) option requires a normal varlist, not an iv varlist") | |
- char _dta[reghdfe_cache] 1 | |
- local chars absorb N_hdfe original_absvars extended_absvars vce vceoption vcetype vcesuite | |
> vceextra num_clusters clustervars bw kernel dkraay kiefer twicerobust | |
- foreach char of local chars { | |
- char _dta[`char'] ``char'' | |
= char _dta[absorb] insurer_n year | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[N_hdfe] 2 | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[original_absvars] insurer_n year | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[extended_absvars] insurer_n year | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[vce] | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[vceoption] unadjusted | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[vcetype] unadjusted | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[vcesuite] default | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[vceextra] | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[num_clusters] 0 | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[clustervars] | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[bw] 1 | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[kernel] | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[dkraay] 1 | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[kiefer] | |
- } | |
- char _dta[`char'] ``char'' | |
= char _dta[twicerobust] 0 | |
- } | |
- } | |
- _get_diopts diopts options, `options' | |
= _get_diopts diopts options, | |
- Assert `"`options'"'=="", msg(`"invalid options: `options'"') | |
= Assert `""'=="", msg(`"invalid options: "') | |
- if ("`hascons'`tsscons'"!="") di in ye "(option `hascons'`tsscons' ignored)" | |
= if (""!="") di in ye "(option ignored)" | |
- local allkeys `allkeys' diopts | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages vceoption vcetype vcesuite vceextra num_clusters clustervars bw | |
> kernel dkraay kiefer twicerobust ffirst dofadjustments groupvar stats summarize_quietly fast lev | |
> el nested diopts | |
- local allkeys `allkeys' suboptions notes | |
= local allkeys cmdline if in timeit savecache keepvars usecache subcmd model ivsuite estima | |
> tor depvar indepvars endogvars instruments fe_format basevars weightvar weighttype weightexp abs | |
> orb_keepvars N_hdfe will_save_fe original_absvars extended_absvars equation_d transform accelera | |
> tion panelvar timevar poolsize verbose tolerance maxiterations keepsingletons timeit verbose sta | |
> ges stage_suboptions savestages vceoption vcetype vcesuite vceextra num_clusters clustervars bw | |
> kernel dkraay kiefer twicerobust ffirst dofadjustments groupvar stats summarize_quietly fast lev | |
> el nested diopts suboptions notes | |
- Debug, level(3) newline | |
- Debug, level(3) msg("{title:Parsed options:}") | |
- foreach key of local allkeys { | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"reghdfe DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 _ | |
> _000009 __00000A __00000B if __000001 [] , absorb(insurer_n year) cluster() cache(save, keepvars | |
> ())"'!="") Debug, level(3) msg(" cmdline = " as result `"reghdfe DeltaEquity __000002 __000003 | |
> __000004 __000005 __000006 __000007 __000008 __000009 __00000A __00000B if __000001 [] , absorb( | |
> insurer_n year) cluster() cache(save, keepvars())"') | |
- c_local `key' `"``key''"' | |
= c_local cmdline `"reghdfe DeltaEquity __000002 __000003 __000004 __000005 __000006 __00000 | |
> 7 __000008 __000009 __00000A __00000B if __000001 [] , absorb(insurer_n year) cluster() cache(sa | |
> ve, keepvars())"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"if __000001 "'!="") Debug, level(3) msg(" if = " as result `"if __000001 "') | |
- c_local `key' `"``key''"' | |
= c_local if `"if __000001 "' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" in = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local in `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" timeit = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local timeit `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"1"'!="") Debug, level(3) msg(" savecache = " as result `"1"') | |
- c_local `key' `"``key''"' | |
= c_local savecache `"1"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" keepvars = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local keepvars `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" usecache = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local usecache `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"regress"'!="") Debug, level(3) msg(" subcmd = " as result `"regress"') | |
- c_local `key' `"``key''"' | |
= c_local subcmd `"regress"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"ols"'!="") Debug, level(3) msg(" model = " as result `"ols"') | |
- c_local `key' `"``key''"' | |
= c_local model `"ols"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" ivsuite = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local ivsuite `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" estimator = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local estimator `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"DeltaEquity"'!="") Debug, level(3) msg(" depvar = " as result `"DeltaEquity"') | |
- c_local `key' `"``key''"' | |
= c_local depvar `"DeltaEquity"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"__000002 __000003 __000004 __000005 __000006 __000007 __000008 __000009 __00000A __0 | |
> 0000B"'!="") Debug, level(3) msg(" indepvars = " as result `"__000002 __000003 __000004 __00000 | |
> 5 __000006 __000007 __000008 __000009 __00000A __00000B"') | |
- c_local `key' `"``key''"' | |
= c_local indepvars `"__000002 __000003 __000004 __000005 __000006 __000007 __000008 __00000 | |
> 9 __00000A __00000B"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" endogvars = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local endogvars `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" instruments = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local instruments `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"%9.0g"'!="") Debug, level(3) msg(" fe_format = " as result `"%9.0g"') | |
- c_local `key' `"``key''"' | |
= c_local fe_format `"%9.0g"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 __000009 | |
> __00000A __00000B"'!="") Debug, level(3) msg(" basevars = " as result `"DeltaEquity __000002 __ | |
> 000003 __000004 __000005 __000006 __000007 __000008 __000009 __00000A __00000B"') | |
- c_local `key' `"``key''"' | |
= c_local basevars `"DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000 | |
> 008 __000009 __00000A __00000B"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" weightvar = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local weightvar `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" weighttype = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local weighttype `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" weightexp = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local weightexp `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"insurer_n year"'!="") Debug, level(3) msg(" absorb_keepvars = " as result `"insurer | |
> _n year"') | |
- c_local `key' `"``key''"' | |
= c_local absorb_keepvars `"insurer_n year"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"2"'!="") Debug, level(3) msg(" N_hdfe = " as result `"2"') | |
- c_local `key' `"``key''"' | |
= c_local N_hdfe `"2"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" will_save_fe = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local will_save_fe `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"insurer_n year"'!="") Debug, level(3) msg(" original_absvars = " as result `"insure | |
> r_n year"') | |
- c_local `key' `"``key''"' | |
= c_local original_absvars `"insurer_n year"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"insurer_n year"'!="") Debug, level(3) msg(" extended_absvars = " as result `"insure | |
> r_n year"') | |
- c_local `key' `"``key''"' | |
= c_local extended_absvars `"insurer_n year"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" equation_d = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local equation_d `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" transform = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local transform `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" acceleration = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local acceleration `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"id"'!="") Debug, level(3) msg(" panelvar = " as result `"id"') | |
- c_local `key' `"``key''"' | |
= c_local panelvar `"id"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"year"'!="") Debug, level(3) msg(" timevar = " as result `"year"') | |
- c_local `key' `"``key''"' | |
= c_local timevar `"year"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" poolsize = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local poolsize `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" verbose = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local verbose `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" tolerance = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local tolerance `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" maxiterations = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local maxiterations `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" keepsingletons = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local keepsingletons `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" timeit = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local timeit `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" verbose = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local verbose `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"none"'!="") Debug, level(3) msg(" stages = " as result `"none"') | |
- c_local `key' `"``key''"' | |
= c_local stages `"none"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" stage_suboptions = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local stage_suboptions `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"1"'!="") Debug, level(3) msg(" savestages = " as result `"1"') | |
- c_local `key' `"``key''"' | |
= c_local savestages `"1"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"unadjusted"'!="") Debug, level(3) msg(" vceoption = " as result `"unadjusted"') | |
- c_local `key' `"``key''"' | |
= c_local vceoption `"unadjusted"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"unadjusted"'!="") Debug, level(3) msg(" vcetype = " as result `"unadjusted"') | |
- c_local `key' `"``key''"' | |
= c_local vcetype `"unadjusted"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"default"'!="") Debug, level(3) msg(" vcesuite = " as result `"default"') | |
- c_local `key' `"``key''"' | |
= c_local vcesuite `"default"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" vceextra = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local vceextra `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" num_clusters = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local num_clusters `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" clustervars = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local clustervars `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"1"'!="") Debug, level(3) msg(" bw = " as result `"1"') | |
- c_local `key' `"``key''"' | |
= c_local bw `"1"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" kernel = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local kernel `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"1"'!="") Debug, level(3) msg(" dkraay = " as result `"1"') | |
- c_local `key' `"``key''"' | |
= c_local dkraay `"1"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" kiefer = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local kiefer `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" twicerobust = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local twicerobust `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" ffirst = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local ffirst `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"pairwise clusters continuous"'!="") Debug, level(3) msg(" dofadjustments = " as res | |
> ult `"pairwise clusters continuous"') | |
- c_local `key' `"``key''"' | |
= c_local dofadjustments `"pairwise clusters continuous"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" groupvar = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local groupvar `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" stats = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local stats `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" summarize_quietly = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local summarize_quietly `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" fast = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local fast `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" level = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local level `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`"0"'!="") Debug, level(3) msg(" nested = " as result `"0"') | |
- c_local `key' `"``key''"' | |
= c_local nested `"0"' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" diopts = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local diopts `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" suboptions = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local suboptions `""' | |
- } | |
- if (`"``key''"'!="") Debug, level(3) msg(" `key' = " as result `"``key''"') | |
= if (`""'!="") Debug, level(3) msg(" notes = " as result `""') | |
- c_local `key' `"``key''"' | |
= c_local notes `""' | |
- } | |
------------------------------------------------------------------------- end hdfe.Parse --- | |
- assert `savecache' | |
= assert 1 | |
- Assert !`will_save_fe', msg("savecache disallows saving FEs") | |
= Assert !0, msg("savecache disallows saving FEs") | |
---------------------------------------------------------------------- begin hdfe.Assert --- | |
- syntax anything(everything equalok) [, MSG(string asis) RC(integer 198)] | |
- if !(`anything') { | |
= if !(!0) { | |
di as error `msg' | |
exit `rc' | |
} | |
------------------------------------------------------------------------ end hdfe.Assert --- | |
- if ("`clear'"=="") { | |
= if (""=="") { | |
- preserve | |
- tempvar uid | |
- GenUID `uid' | |
= GenUID __00000M | |
---------------------------------------------------------------------- begin hdfe.GenUID --- | |
- args uid | |
- local uid_type = cond(c(N)>c(maxlong), "double", "long") | |
- gen `uid_type' `uid' = _n | |
= gen long __00000M = _n | |
- la var `uid' "[UID]" | |
= la var __00000M "[UID]" | |
------------------------------------------------------------------------ end hdfe.GenUID --- | |
- } | |
- Compact, basevars(`basevars') depvar(`depvar' `indepvars') uid(`uid') timevar(`timevar') pan | |
> elvar(`panelvar') weightvar(`weightvar') absorb_keepvars(`absorb_keepvars') clustervars(`cluster | |
> vars') if(`if') in(`in') verbose(`verbose') vceextra(`vceextra') savecache(1) more_keepvars(`kee | |
> pvars') | |
= Compact, basevars(DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 | |
> __000009 __00000A __00000B) depvar(DeltaEquity __000002 __000003 __000004 __000005 __000006 __0 | |
> 00007 __000008 __000009 __00000A __00000B) uid(__00000M) timevar(year) panelvar(id) weightvar() | |
> absorb_keepvars(insurer_n year) clustervars() if(if __000001 ) in() verbose(0) vceextra() saveca | |
> che(1) more_keepvars() | |
--------------------------------------------------------------------- begin hdfe.Compact --- | |
- syntax, basevars(string) verbose(integer) [depvar(string) indepvars(string) endogvars(stri | |
> ng) instruments(string)] [uid(string) timevar(string) panelvar(string) weightvar(string) absorb_ | |
> keepvars(string) clustervars(string)] [if(string) in(string) vceextra(string)] [savecache(intege | |
> r 0) more_keepvars(varlist)] | |
- local exp "= `weightvar'" | |
= local exp "= " | |
- marksample touse, novar | |
- local cluster_keepvars `clustervars' | |
= local cluster_keepvars | |
- local cluster_keepvars : subinstr local cluster_keepvars "#" " ", all | |
- local cluster_keepvars : subinstr local cluster_keepvars "i." "", all | |
- keep `uid' `touse' `basevars' `timevar' `panelvar' `weightvar' `absorb_keepvars' `cluster_ | |
> keepvars' `more_keepvars' | |
= keep __00000M __00000N DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 _ | |
> _000008 __000009 __00000A __00000B year id insurer_n year | |
- local expandedvars | |
- local sets depvar indepvars endogvars instruments | |
- Debug, level(4) newline | |
- Debug, level(4) msg("{title:Expanding factor and time-series variables:}") | |
- foreach set of local sets { | |
- local varlist ``set'' | |
= local varlist DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 _ | |
> _000009 __00000A __00000B | |
- if ("`varlist'"=="") continue | |
= if ("DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __000008 __000009 _ | |
> _00000A __00000B"=="") continue | |
- ExpandFactorVariables `varlist' if `touse', setname(`set') verbose(`verbose') savecache(`s | |
> avecache') | |
= ExpandFactorVariables DeltaEquity __000002 __000003 __000004 __000005 __000006 __000007 __ | |
> 000008 __000009 __00000A __00000B if __00000N, setname(depvar) verbose(0) savecache(1) | |
- local `set' "`r(varlist)'" | |
= local depvar "DeltaEquity __2005b__year_X_c__DeltaVincom __2006__year_X_c__DeltaVincome __ | |
> 2007__year_X_c__DeltaVincome __2008__year_X_c__DeltaVincome __2009__year_X_c__DeltaVincome __201 | |
> 0__year_X_c__DeltaVincome __2011__year_X_c__DeltaVincome __2012__year_X_c__DeltaVincome __2013__ | |
> year_X_c__DeltaVincome __2014__year_X_c__DeltaVincome" | |
- local expandedvars `expandedvars' ``set'' | |
= local expandedvars DeltaEquity __2005b__year_X_c__DeltaVincom __2006__year_X_c__DeltaVinc | |
> ome __2007__year_X_c__DeltaVincome __2008__year_X_c__DeltaVincome __2009__year_X_c__DeltaVincome | |
> __2010__year_X_c__DeltaVincome __2011__year_X_c__DeltaVincome __2012__year_X_c__DeltaVincome __ | |
> 2013__year_X_c__DeltaVincome __2014__year_X_c__DeltaVincome | |
- } | |
- local varlist ``set'' | |
= local varlist | |
- if ("`varlist'"=="") continue | |
= if (""=="") continue | |
ExpandFactorVariables `varlist' if `touse', setname(`set') verbose(`verbose') savecache(`s | |
> avecache') | |
local `set' "`r(varlist)'" | |
local expandedvars `expandedvars' ``set'' | |
} | |
- local varlist ``set'' | |
= local varlist | |
- if ("`varlist'"=="") continue | |
= if (""=="") continue | |
ExpandFactorVariables `varlist' if `touse', setname(`set') verbose(`verbose') savecache(`s | |
> avecache') | |
local `set' "`r(varlist)'" | |
local expandedvars `expandedvars' ``set'' | |
} | |
- local varlist ``set'' | |
= local varlist | |
- if ("`varlist'"=="") continue | |
= if (""=="") continue | |
ExpandFactorVariables `varlist' if `touse', setname(`set') verbose(`verbose') savecache(`s | |
> avecache') | |
local `set' "`r(varlist)'" | |
local expandedvars `expandedvars' ``set'' | |
} | |
- if (`savecache') { | |
= if (1) { | |
- local cachevars `timevar' `panelvar' | |
= local cachevars year id | |
- foreach basevar of local basevars { | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!1) { | |
local cachevars `cachevars' `basevar' | |
} | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 __000004 | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 __000004 __000005 | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 __000004 __000005 __000006 | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 __000004 __000005 __000006 __000007 | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 __000004 __000005 __000006 __000007 __000008 | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 __000004 __000005 __000006 __000007 __000008 __0 | |
> 00009 | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 __000004 __000005 __000006 __000007 __000008 __0 | |
> 00009 __00000A | |
- } | |
- } | |
- local in_expanded : list basevar in expandedvars | |
- if (!`in_expanded') { | |
= if (!0) { | |
- local cachevars `cachevars' `basevar' | |
= local cachevars year id __000002 __000003 __000004 __000005 __000006 __000007 __000008 __0 | |
> 00009 __00000A __00000B | |
- } | |
- } | |
- c_local cachevars `cachevars' | |
= c_local cachevars year id __000002 __000003 __000004 __000005 __000006 __000007 __000008 _ | |
> _000009 __00000A __00000B | |
- if ("`cachevars'"!="") Debug, level(0) msg("(cachevars: {res}`cachevars'{txt})") | |
= if ("year id __000002 __000003 __000004 __000005 __000006 __000007 __000008 __000009 __000 | |
> 00A __00000B"!="") Debug, level(0) msg("(cachevars: {res}year id __000002 __000003 __000004 __00 | |
> 0005 __000006 __000007 __000008 __000009 __00000A __00000B{txt})") | |
- } | |
- if ("`vceextra'"!="") local tsvars `panelvar' `timevar' | |
= if (""!="") local tsvars id year | |
- keep `uid' `touse' `expandedvars' `weightvar' `absorb_keepvars' `cluster_keepvars' `tsvars | |
> ' `cachevars' `more_keepvars' | |
= keep __00000M __00000N DeltaEquity __2005b__year_X_c__DeltaVincom __2006__year_X_c__DeltaV | |
> income __2007__year_X_c__DeltaVincome __2008__year_X_c__DeltaVincome __2009__year_X_c__DeltaVinc | |
> ome __2010__year_X_c__DeltaVincome __2011__year_X_c__DeltaVincome __2012__year_X_c__DeltaVincome | |
> __2013__year_X_c__DeltaVincome __2014__year_X_c__DeltaVincome insurer_n year year id __00000 | |
> 2 __000003 __000004 __000005 __000006 __000007 __000008 __000009 __00000A __00000B | |
variable __000002 not found | |
----------------------------------------------------------------------- end hdfe.Compact --- | |
mata: map_init_keepvars(HDFE_S, "`expandedvars' `uid' `cachevars' `keepvars'") | |
mata: map_precompute(HDFE_S) | |
global updated_clustervars = "`r(updated_clustervars)'" | |
if ("`clear'"=="") mata: store_uid(HDFE_S, "`uid'") | |
if (`timeit') Tic, n(62) | |
mata: map_estimate_dof(HDFE_S, "`dofadjustments'", "`groupvar'") | |
if (`timeit') Toc, n(62) msg(estimate dof) | |
assert e(df_a)<. | |
local kk = e(df_a) | |
qui ds `expandedvars' | |
local NUM_VARS : word count `r(varlist)' | |
Debug, msg("(computing residuals for `NUM_VARS' variables)") | |
foreach var of local expandedvars { | |
local newvars `newvars' `generate'`var' | |
} | |
local restore_original = ("`clear'"=="") | |
mata: map_solve(HDFE_S, "`expandedvars'", "`newvars'", "", 0, `restore_original') | |
foreach var of local expandedvars { | |
local label : char `generate'`var'[name] | |
if ("`label'"=="") local label `var' | |
la var `generate'`var' "Residuals: `label'" | |
} | |
if ("`groupvar'"!="") mata: groupvar2dta(HDFE_S, `restore_original') | |
if ("`sample'"!="") { | |
mata: esample2dta(HDFE_S, "`sample'") | |
qui replace `sample' = 0 if `sample'==. | |
la var `sample' "[HDFE Sample]" | |
mata: drop_uid(HDFE_S) | |
} | |
mata: map_ereturn_dof(HDFE_S) | |
local N_hdfe = e(N_hdfe) | |
ereturn local cmd = "hdfe" | |
ereturn local extended_absvars = "`extended_absvars'" | |
ereturn local absvars = "`original_absvars'" | |
} | |
- local rc = c(rc) | |
- cap mata: mata drop HDFE_S | |
- cap global updated_clustervars | |
- local keys absorb N_hdfe original_absvars extended_absvars vce vceoption vcetype vcesuite vc | |
> eextra num_clusters clustervars bw kernel dkraay kiefer twicerobust reghdfe_cache | |
- foreach key of local keys { | |
- char _dta[`key'] | |
= char _dta[absorb] | |
- } | |
- char _dta[`key'] | |
= char _dta[N_hdfe] | |
- } | |
- char _dta[`key'] | |
= char _dta[original_absvars] | |
- } | |
- char _dta[`key'] | |
= char _dta[extended_absvars] | |
- } | |
- char _dta[`key'] | |
= char _dta[vce] | |
- } | |
- char _dta[`key'] | |
= char _dta[vceoption] | |
- } | |
- char _dta[`key'] | |
= char _dta[vcetype] | |
- } | |
- char _dta[`key'] | |
= char _dta[vcesuite] | |
- } | |
- char _dta[`key'] | |
= char _dta[vceextra] | |
- } | |
- char _dta[`key'] | |
= char _dta[num_clusters] | |
- } | |
- char _dta[`key'] | |
= char _dta[clustervars] | |
- } | |
- char _dta[`key'] | |
= char _dta[bw] | |
- } | |
- char _dta[`key'] | |
= char _dta[kernel] | |
- } | |
- char _dta[`key'] | |
= char _dta[dkraay] | |
- } | |
- char _dta[`key'] | |
= char _dta[kiefer] | |
- } | |
- char _dta[`key'] | |
= char _dta[twicerobust] | |
- } | |
- char _dta[`key'] | |
= char _dta[reghdfe_cache] | |
- } | |
- if ("`keepids'"=="" | `rc') cap drop __ID*__ | |
= if (""=="" | 111) cap drop __ID*__ | |
- if ("`keepids'"=="" | `rc') cap drop __CL*__ | |
= if (""=="" | 111) cap drop __CL*__ | |
- if (`rc') exit `rc' | |
= if (111) exit 111 | |
--------------------------------------------------------------------------------- end hdfe --- | |
x | |
scalar `df_a' = e(df_a) | |
local touse `sample' | |
tempvar `prefix'`y' | |
qui gen ``prefix'`y'' = `prefix'`y' | |
drop `prefix'`y' | |
local py ``prefix'`y'' | |
foreach v in `x'{ | |
tempvar `prefix'`v' | |
qui gen ``prefix'`v'' = `prefix'`v' | |
drop `prefix'`v' | |
local px `px' ``prefix'`v'' | |
} | |
local xname2 `xname' | |
local yhdfe `y' | |
local xhdfe `x' | |
} | |
---------------------------------------------------------------------------- end innerregife --- | |
} | |
----------------------------------------------------------------------------------- end regife --- |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment