按特定年份的四分位数运行国家/地区的回归

时间:2015-05-18 02:58:16

标签: stata

我正在探索一种效果,我认为会因国内生产总值水平而异,从垂直,国家和年份(1960年至2015年)的数据集,因此每个国家/地区标签都在55行。我跑了

sort year
by year: egen yrank = xtile(rgdp), nquantiles(4)

每年标记的是那一年他们所占GDP的四分之一。我想运行这个:

xtreg fiveyearg taxratio if yrank == 1 & year==1960

这将使我的变量(税率)​​与仅仅在1960年处于GDP最低四分位数的国家的某些平均gdp数据相反。因此,即使稍后他们的成长变得足以改变排名,后来的数据仍然会在回归池中。遗憾的是,我无法运行此代码或任何变体。

我目前的做法是尝试生成一些新的变量,如果它们在1960年的最低四分位数,那么每行都会为国家标签X赋值为1,但我也无法做到这一点。我的想法已经用完了,所以我想我会问!

1 个答案:

答案 0 :(得分:0)

根据您的最新评论,该评论描述(非)预期的行为:

clear
set more off

*----- example data -----

input ///
country year rank
1 1960 2
1 1961 1
1 1962 2
2 1960 1
2 1961 1
2 1962 1
3 1960 3
3 1961 3
3 1962 3
end

list, sepby(country)

*----- what you want -----

// tag countries whose first observation for -rank- is 1
// (I assume the first observation for -year- is always 1960)
bysort country : gen toreg = rank[1] == 1

list, sepby(country)

// run regression conditional on -toreg-
xtreg ... if toreg

如果有疑问,请检查help subscripting