X-Git-Url: https://git.auder.net/images/pieces/Cwda/wo.svg?a=blobdiff_plain;f=R%2FgenerateIOdefault.R;h=3613f2b9b58998386bdb175f3d2d44b0e31729b2;hb=e01c9b1fc45d307b00a9a8a6f6395850107a1d60;hp=1d5c1604aa8e8288026a8b366423afd1781fae79;hpb=493a35bfea6d1210c94ced8fbfe3e572f0389ea5;p=valse.git diff --git a/R/generateIOdefault.R b/R/generateIOdefault.R index 1d5c160..3613f2b 100644 --- a/R/generateIOdefault.R +++ b/R/generateIOdefault.R @@ -1,25 +1,29 @@ -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)) +#' Generate a sample of (X,Y) of size n with default values +#' @param n sample size +#' @param p number of covariates +#' @param m size of the response +#' @param k number of clusters +#' @return list with X and Y +#' @export +#----------------------------------------------------------------------- +generateIOdefault = function(n, p, m, k) +{ + covX = diag(p) covY = array(0, dim=c(m,m,k)) - - for(r in 1:k){ - covX[,,r] = diag(p) + for(r in 1:k) + { covY[,,r] = diag(m) } - pi = (1/k) * rep(1,k) + pi = rep(1./k,k) beta = array(0, dim=c(p,m,k)) - - for(j in 1:p){ + for(j in 1:p) + { nonZeroCount = ceiling(m * runif(1)) - beta[j,1:nonZeroCount,] = matrix(runif(nonZeroCount*k),ncol = k) + 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 + sample_IO = generateIO(covX, covY, pi, beta, n) + return (list(X=sample_IO$X,Y=sample_IO$Y)) +}