cvEigenanatomy.RdPerform cross-validation on an image set using eigencomponents to predict an outcome variable.
cvEigenanatomy(
demog,
images,
outcome,
ratio = 10,
mask = NULL,
sparseness = 0.01,
nvecs = 50,
its = 5,
cthresh = 250,
...
)Demographics information that includes outcome and (optional) covariates.
n by p input image matrix, where n is the number of subjects and p is the number of voxels.
Name of outcome variable. Must be present in demog.
If greater than 1, number of folds for cross-validation. If
less than 1, one testing-training step will be performed, using ratio
of the data for training and the rest for testing.
Mask image of type antsImage.
Desired level of sparsity in decomposition.
Number of eigenvectors to use in decomposition.
Number of iterations for decomposition.
Cluster threshold for decomposition.
Additional options passed to regressProjections.
A result, or (if ratio > 1) list of results, from
regressProjection.
if (FALSE) { # \dontrun{
# generate simulated outcome
nsubjects <- 100
x1 <- seq(1, 10, length.out = nsubjects) + rnorm(nsubjects, sd = 2)
x2 <- seq(25, 15, length.out = nsubjects) + rnorm(nsubjects, sd = 2)
outcome <- 3 * x1 + 4 * x2 + rnorm(nsubjects, sd = 1)
# generate simulated images with outcome predicted
# by sparse subset of voxels
voxel.1 <- 3 * x1 + rnorm(nsubjects, sd = 2)
voxel.2 <- rnorm(nsubjects, sd = 2)
voxel.3 <- 2 * x2 + rnorm(nsubjects, sd = 2)
voxel.4 <- rnorm(nsubjects, sd = 3)
input <- cbind(voxel.1, voxel.2, voxel.3, voxel.4)
mask <- as.antsImage(matrix(c(1, 1, 1, 1), nrow = 2))
# generate sample demographics that do not explain outcome
age <- runif(nsubjects, 50, 75)
demog <- data.frame(outcome = outcome, age = age)
result <- cvEigenanatomy(demog, input, "outcome",
ratio = 5, mask,
sparseness = 0.25, nvecs = 4
)
} # }