Hi,

I want to randomly assign treatment and run the same regression in the loop for 50 times and then I want to see how many times my variable of interest (POST) is significant. It's better if I can store the estimate with the p-value (or in a star representation). I tried the following. Where am I going wrong? Any help is appreciated.

drop post

drop random

foreach i of numlist 1/50 {

generate random=uniform()

sort random

generate post=0

replace post=1 in 1/50

tsset id year

set matsize 800

set more off

reg agriculture post i.country_id i.year i.country#c.line_time_trend [aw=ypop], cluster( country_id )

est sto b_1

esttab b_1,keep( post ) se star(* 0.10 ** 0.05 *** 0.001)

est clear //estimates clear

matrix p = J(`post',1,.)

matrix rownames p = `y'

matrix colnames p = "p"

matlist p

// for the computation of the p-values

local i = 1

foreach var of local y {

reg `var' post

matrix p[`i++',1] = 2*ttail(e(df_r), abs(_b[post]/_se[post]))

}

//

matlist p

}

I want to randomly assign treatment and run the same regression in the loop for 50 times and then I want to see how many times my variable of interest (POST) is significant. It's better if I can store the estimate with the p-value (or in a star representation). I tried the following. Where am I going wrong? Any help is appreciated.

drop post

drop random

foreach i of numlist 1/50 {

generate random=uniform()

sort random

generate post=0

replace post=1 in 1/50

tsset id year

set matsize 800

set more off

reg agriculture post i.country_id i.year i.country#c.line_time_trend [aw=ypop], cluster( country_id )

est sto b_1

esttab b_1,keep( post ) se star(* 0.10 ** 0.05 *** 0.001)

est clear //estimates clear

matrix p = J(`post',1,.)

matrix rownames p = `y'

matrix colnames p = "p"

matlist p

// for the computation of the p-values

local i = 1

foreach var of local y {

reg `var' post

matrix p[`i++',1] = 2*ttail(e(df_r), abs(_b[post]/_se[post]))

}

//

matlist p

}

## Comment