Select the chain with the best log likelihood for each combination of tested parameters from a SCE object gererated by celdaGridSearch or from a celdaList object.

selectBestModel(x, asList = FALSE, altExpName = "featureSubset")

# S4 method for SingleCellExperiment
selectBestModel(x, asList = FALSE, altExpName = "featureSubset")

# S4 method for celdaList
selectBestModel(x, asList = FALSE)

Arguments

x

Can be one of

  • A SingleCellExperiment object returned from celdaGridSearch, recursiveSplitModule, or recursiveSplitCell. Must contain a list named "celda_grid_search" in metadata(x).

  • celdaList object.

asList

TRUE or FALSE. Whether to return the best model as a celdaList object or not. If FALSE, return the best model as a corresponding celda model object.

altExpName

The name for the altExp slot to use. Default "featureSubset".

Value

One of

  • A new SingleCellExperiment object containing one model with the best log-likelihood for each set of parameters in metadata(x). If there is only one set of parameters, a new SingleCellExperiment object with the matching model stored in the metadata "celda_parameters" slot will be returned. Otherwise, a new SingleCellExperiment object with the subset models stored in the metadata "celda_grid_search" slot will be returned.

  • A new celdaList object containing one model with the best log-likelihood for each set of parameters. If only one set of parameters is in the celdaList, the best model will be returned directly instead of a celdaList object.

See also

Examples

data(sceCeldaCGGridSearch) ## Returns same result as running celdaGridSearch with "bestOnly = TRUE" sce <- selectBestModel(sceCeldaCGGridSearch) data(celdaCGGridSearchRes) ## Returns same result as running celdaGridSearch with "bestOnly = TRUE" cgsBest <- selectBestModel(celdaCGGridSearchRes)