星期几效果 - 不单独排除虚拟变量

时间:2017-03-05 16:09:26

标签: stata

我想测试股票收益的周日影响。我写的stata代码有效,但看起来效率很低。

// 1) Monday effect
eststo:reg return day_dummy2 day_dummy3 day_dummy4 day_dummy5
// 2) Tuesday effect
eststo:reg return day_dummy1 day_dummy3 day_dummy4 day_dummy5
// 3) Wednesday effect
eststo:reg return day_dummy1 day_dummy2 day_dummy4 day_dummy5

等等。 有没有办法编写具有相同功能的代码(一次不包括一天),例如一个foreach循环?

非常感谢你的帮助!

1 个答案:

答案 0 :(得分:1)

或许有点笨拙,但您可以使用Stata的宏(请参阅help extended_fcn)函数迭代地排除您列出的一个变量并生成剩余变量列表。

local vars "day1 day2 day3 day4 day5 day6 day7"
forvalues i = 1/7 {
    local varexclude : word `i' of `vars'
    local varsout`i' : subinstr local vars "`varexclude'" ""
    // insert -estout- command here
}
macro list // to verify the individual `varsout`i'' local macros

您可以使用ds day*获取初始varlist,该变量列表将变量列表存储在r(varlist)中。