R/compute.sigma.star.R

compute.sigma.star <-
function (prop.vec.bin, corr.mat) 
{
    no.bin= length(prop.vec.bin)
 
    sigma = corr.mat
    p = prop.vec.bin
    q = 1 - p

sigmaBB = diag(no.bin)
for (i in 1:no.bin) {
for (j in 1:no.bin) {
if (i != j) {
  sigmaBB[i, j] = phi2tetra(sigma[i, j], c(p[i], p[j])) }
}
}
if(!is.positive.definite(sigmaBB)){
warning( "Tetrachoric correlation matrix is not positive definite)")
sigmaBB=as.matrix(nearPD(sigmaBB, corr = TRUE, 
            keepDiag = TRUE)$mat)
}

sigmaBB = ( sigmaBB+t(sigmaBB) )/2
return(sigmaBB )
}

Try the MultiOrd package in your browser

Any scripts or data that you put into this service are public.

MultiOrd documentation built on March 6, 2021, 1:08 a.m.