[R] (no subject)
carpan at sapo.pt
carpan at sapo.pt
Mon Jan 17 12:45:36 CET 2011
Dear R community,and especially Giovanni Millo,
For my master's thesis i need to simulate a panel data with the fixed
effects correlated with the predicor, so i run the
the following code:
set.seed(1970)
#######################Panel data simulation with alphai correlated
with xi#####################################
n <- 5
t <- 4
nt <- n*t
pData <- data.frame(id = rep(paste("JohnDoe", 1:n, sep = "_"), each =
t),time = rep(1981:1984, n))
rho <-0.95
alphai <- rnorm(n,mean=0,sd=1)#alphai simulation
x<- as.matrix(rnorm(nt,1))#xi simulation
akro <- kronecker(alphai ,matrix(1,t,1))#kronecker of alphai
cormat<-matrix(c(1,rho,rho,1),nrow=2,ncol=2)#correlation matrix
cormat.chold <- chol(cormat)#choleski transformation of correlation matrix
akrox <- cbind(akro,x)
ax <- akrox%*%cormat.chold
ai <- as.matrix(ax[,1])
pData$alphai<-as.vector(ai)
xcorr <- as.matrix(ax[,2:(1+ncol(x))])
pData$xcorrei<-as.vector(xcorr)
pData$yi <- 5 + pData$alphai + 5* pData$xcorrei + rnorm(nt)
##########################panel data frame##################################
library(plm)
pData <- pdata.frame(pData, c("id", "time"))
pData
I think the panel is correctly generated, but my doubt is about the
simulation of the correlated variables:
alphai <- rnorm(n,mean=0,sd=1)#alphai simulation
x<- as.matrix(rnorm(nt,1))#xi simulation
akro <- kronecker(alphai ,matrix(1,t,1))#kronecker of alphai
cormat<-matrix(c(1,rho,rho,1),nrow=2,ncol=2)#correlation matrix
cormat.chold <- chol(cormat)#choleski transformation of correlation matrix
akrox <- cbind(akro,x)
ax <- akrox%*%cormat.chold
ai <- as.matrix(ax[,1])
pData$alphai<-as.vector(ai)
xcorr <- as.matrix(ax[,2:(1+ncol(x))])
This method is correct or is there a better way to do this?
Must generate a variable xi correlated with the alphai, for various
values of rho:
For example rho=(0,0.5,0.6,0.8,0.95,0.99)
how do I simulate the xi associated with each value of rho and put in
the data frame at once?
tried various ways without success
Please give your opinion and suggestions to improve my simulation. Tank you,
best regards
Carlos Brás
More information about the R-help
mailing list