# consider 4 discrete variables
k<-4
# with these marginal distributions
marginal<-list(0.4,c(0.3,0.6),c(0.25,0.5,0.75),c(0.1,0.2,0.8,0.9))
# generated discretizing a multivariate standard normal variable
# with correlation matrix
Sigma<-matrix(0.5,4,4)
diag(Sigma)<-1
# the resulting correlation matrix for the discrete variables is
contord(marginal,Sigma)
# note all the correlations are smaller than the original 0.6
# change Sigma, adding a negative correlation
Sigma[1,2]<--0.15
Sigma[2,1]<-Sigma[1,2]
Sigma
# checking whether Sigma is still positive definite
eigen(Sigma)$values # all >0, OK
contord(marginal, Sigma)
Run the code above in your browser using DataCamp Workspace