anovalmerVoxel {voxel} | R Documentation |
Computes voxelwise analysis of variance (ANOVA) tables for a Linear Mixed Effects Model.
Description
This function computes analysis of variance tables for the fitted models after running a Linear Mixed Effect Model using the lmerTest() function and the anova function in that package. The analysis will run in all voxels in the mask and will return the analysis of variance table for each voxel. Please check the lmerTest documentation for further information about specific arguments used in anova.lmerModLmerTest. Multi-model calls are disabled.
Usage
anovalmerVoxel(image, mask, fourdOut = NULL, formula, subjData,
ddf = "Satterthwaite", type = 3, mc.preschedule = TRUE, ncores = 1,
...)
Arguments
image |
Input image of type 'nifti' or vector of path(s) to images. If multiple paths, the script will call mergeNifti() and merge across time. |
mask |
Input mask of type 'nifti' or path to mask. Must be a binary mask |
fourdOut |
To be passed to mergeNifti, This is the path and file name without the suffix to save the fourd file. Default (NULL) means script won't write out 4D image. |
formula |
Must be a formula passed to lmer() |
subjData |
Dataframe containing all the covariates used for the analysis |
ddf |
Which approximation of DDF to be used. To be passed to anova.lmerModLmerTest. Defaults to "Satterthwaite" |
type |
Type of hypothesis to be test (defined from SAS terminology). Defaults to 3. To be passed to anova.lmerModLmerTest |
mc.preschedule |
Argument to be passed to mclapply, whether or not to preschedule the jobs. More info in parallel::mclapply |
ncores |
Number of cores to use |
... |
Additional arguments passed to lmer() |
Value
Returns list of models fitted to each voxel over the masked images passed to function.
Examples
image <- oro.nifti::nifti(img = array(1:1600, dim =c(4,4,4,25)))
mask <- oro.nifti::nifti(img = array(c(rep(0,15), rep(1,1)), dim = c(4,4,4,1)))
set.seed(1)
covs <- data.frame(x = runif(25), y = runif(25), id = rep(1:5,5))
fm1 <- "~ x + y + (1|id)"
models <- anovalmerVoxel(image, mask, formula = fm1, subjData = covs, ncores = 1, REML=TRUE)