* Stata simulation clear all set cformat %9.2f set obs 1000000 gen X = runiformint(0,1) gen male = runiformint(0,1) gen gop = runiformint(0,1) gen Y = -1*X if male==0 & gop==0 // non-male non-GOP replace Y = -3*X if male==1 & gop==0 // male non-GOP replace Y = -6*X if male==0 & gop==1 // non-male GOP replace Y = -20*X if male==1 & gop==1 // male GOP reg Y X male gop reg Y c.X##i.male c.X##i.gop gen Xmale= X*male gen Xgop = X*gop reg Y X male gop Xmale Xgop # R simulation rm(Y, X, male, gop) options(scipen=999) sample.size <- 1000000 X <- runif(sample.size, 0:1) male <- sample(0:1, sample.size, replace=T) gop <- sample(0:1, sample.size, replace=T) Y <- NA Y[male==0 & gop==0] <- -1*X[male==0 & gop==0] Y[male==1 & gop==0] <- -3*X[male==1 & gop==0] Y[male==0 & gop==1] <- -6*X[male==0 & gop==1] Y[male==1 & gop==1] <- -20*X[male==1 & gop==1] summary(lm(Y ~ X*male + X*gop))