Skip to content

Instantly share code, notes, and snippets.

@matthieugomez
Last active September 10, 2015 18:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save matthieugomez/1878332e7073bd602079 to your computer and use it in GitHub Desktop.
Save matthieugomez/1878332e7073bd602079 to your computer and use it in GitHub Desktop.
trace for hdfe
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