X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=R%2FgenerateIOdefault.R;h=fc01cd811850073cf04498706d7cc5a465a0f9bd;hb=39046da6016f15d625bd99cf0303ea8beb838c79;hp=1d5c1604aa8e8288026a8b366423afd1781fae79;hpb=493a35bfea6d1210c94ced8fbfe3e572f0389ea5;p=valse.git diff --git a/R/generateIOdefault.R b/R/generateIOdefault.R index 1d5c160..fc01cd8 100644 --- a/R/generateIOdefault.R +++ b/R/generateIOdefault.R @@ -1,25 +1,22 @@ -generateIOdefault = function(n, p, m, k){ - rangeX = 100 - meanX = rangeX*(1-matrix(runif(k*p),ncol = p)) - - covX = array(0, dim=c(p,p,k)) - covY = array(0, dim=c(m,m,k)) - - for(r in 1:k){ - covX[,,r] = diag(p) - covY[,,r] = diag(m) - } - - pi = (1/k) * rep(1,k) - - beta = array(0, dim=c(p,m,k)) - - for(j in 1:p){ - nonZeroCount = ceiling(m * runif(1)) - beta[j,1:nonZeroCount,] = matrix(runif(nonZeroCount*k),ncol = k) - } - - generate = generateIO(meanX, covX, covY, pi, beta, n) - - return(list(generate[[1]],generate[[2]])) -} \ No newline at end of file +generateIOdefault = function(n, p, m, k) +{ + covX = array(0, dim=c(p,p,k)) + covY = array(0, dim=c(m,m,k)) + for(r in 1:k) + { + covX[,,r] = diag(p) + covY[,,r] = diag(m) + } + + pi = rep(1./k,k) + + beta = array(0, dim=c(p,m,k)) + for(j in 1:p) + { + nonZeroCount = ceiling(m * runif(1)) + beta[j,1:nonZeroCount,] = matrix(runif(nonZeroCount*k), ncol=k) + } + + sample_IO = generateIO(covX, covY, pi, beta, n) + return (list(X=sample_IO$X,Y=sample_IO$Y)) +}