p <- 80
n <- 40
K <- 2
k <- K - 1
cp <- numeric()
L <- c(0, floor(p / K) * (1 : k), p)
cp <- floor(p / K) * (1 : k) + 1
## phi0: probe effects; theta0: true methylation values; part: partition of probe indices
phi0 <- runif(p, 0.5, 2.0)
theta0 <- matrix(0, p, n)
part <- list()
for (s in 1 : K) {
part[[s]] <- (L[s] + 1) : L[s + 1]
phi0[part[[s]]] <- phi0[part[[s]]] / sqrt(mean(phi0[part[[s]]]^2))
}
theta0[part[[1]], ] <- rep(1, length(part[[1]]))
theta0[part[[2]], ] <- rep(1, length(part[[2]]))
error <- matrix(runif(p * n, 0, 0.1), p, n)
Y <- theta0 * phi0 + error
fit <- MBAmethyl(Y, steps = 10)
Run the code above in your browser using DataLab