# NOT RUN {
data(industry)
# estimation without adaptation of lag shapes
mycode <- list(
Consum~quec(Job,0,5),
Pollution~quec(Job,1,8)+quec(Consum,1,6)
)
myfit <- dlsem(mycode,group="Region",exogenous=c("Population","GDP"),data=industry,log=TRUE)
### adaptation of lag shapes (takes some seconds more)
#
#mycode <- list(
# Consum~quec(Job,0,15),
# Pollution~quec(Job,0,15)+quec(Consum,0,15)
# )
#
#myfit <- dlsem(mycode,group="Region",exogenous=c("Population","GDP"),data=industry,
# global.control=list(adapt=T,max.gestation=3,min.width=5,max.lead=15,sign="+"),log=TRUE)
#
### equivalently, one may specify control options for each variable:
#
#mycontrol <- list(
# max.gestation=list(Consum=c(Job=3),Pollution=c(Consum=3,Job=3)),
# max.lead=list(Consum=c(Job=15),Pollution=c(Consum=15,Job=15)),
# min.width=list(Consum=c(Job=5),Pollution=c(Consum=5,Job=5)),
# sign=list(Consum=c(Job="+"),Pollution=c(Consum="+",Job="+"))
# )
#
#myfit <- dlsem(mycode,group="Region",exogenous=c("Population","GDP"),data=industry,
# global.control=list(adapt=T),local.control=mycontrol,log=TRUE)
# add a qualitative exogenous variable
industry[,"Policy"] <- factor(1*(industry[,"Year"]>=2006))
levels(industry[,"Policy"]) <- c("no","yes")
myfit <- dlsem(mycode,group="Region",exogenous=c("Population","GDP","Policy"),
data=industry,log=TRUE)
# summaries of estimation
summary(myfit)
# directed acyclic graph
plot(myfit)
# directed acyclic graph including only statistically significant edges
plot(myfit,show.ns=FALSE)
# }
Run the code above in your browser using DataLab