X-Git-Url: https://git.auder.net/?p=valse.git;a=blobdiff_plain;f=pkg%2FR%2FgenerateXY.R;h=064b54b2d083bb3bc9d9ddd26a8654962e5b93c2;hp=fe86045b1f08d3d21cf3161474d6992909b9f1de;hb=1b698c1619dbcf5b3a0608dc894d249945d2bce3;hpb=f7e157cdbcf2d60224c2d6773da9c698174e9aee diff --git a/pkg/R/generateXY.R b/pkg/R/generateXY.R index fe86045..064b54b 100644 --- a/pkg/R/generateXY.R +++ b/pkg/R/generateXY.R @@ -17,14 +17,14 @@ generateXY <- function(n, π, meanX, β, covX, covY) p <- dim(covX)[1] m <- dim(covY)[1] k <- dim(covY)[3] - + X <- matrix(nrow = 0, ncol = p) Y <- matrix(nrow = 0, ncol = m) - + # random generation of the size of each population in X~Y (unordered) sizePop <- rmultinom(1, n, π) - class <- c() #map i in 1:n --> index of class in 1:k - + class <- c() #map i in 1:n --> index of class in 1:k + for (i in 1:k) { class <- c(class, rep(i, sizePop[i])) @@ -33,7 +33,7 @@ generateXY <- function(n, π, meanX, β, covX, covY) Y <- rbind(Y, t(apply(newBlockX, 1, function(row) MASS::mvrnorm(1, row %*% β[, , i], covY[, , i])))) } - + shuffle <- sample(n) list(X = X[shuffle, ], Y = Y[shuffle, ], class = class[shuffle]) }