######################################### DO NOT EDIT! #########################################
#### This file is automatically generated from data-raw/2-generate_r_code_from_containers.R ####
################################################################################################
#' @title SLICE
#'
#' @description
#' Will generate a trajectory using [SLICE](https://doi.org/10.1093/nar/gkw1278).
#'
#' This method was wrapped inside a
#' [container](https://github.com/dynverse/ti_slice).
#' The original code of this method is available
#' [here](https://research.cchmc.org/pbge/slice.html).
#'
#' @references Guo, M., Bao, E.L., Wagner, M., Whitsett, J.A., Xu, Y., 2016.
#' SLICE: determining cell differentiation and lineage based on single cell
#' entropy. Nucleic Acids Research gkw1278.
#'
#' @param lm.method Select "clustering" based or "graph" based method to infer
#' lineage model. Domain: {clustering, graph}. Default: clustering. Format:
#' character.
#' @param model.type The type of models that will be infered: "tree" - directed
#' minimum spanning tree based, "graph" - directed graph based. Domain: {tree,
#' graph}. Default: tree. Format: character.
#' @param ss.method The method for defining core cell set for stable state
#' detection: all - all the cells in a cluster constitute the core cell set; top -
#' cells with scEntropy lower than the ss.threshold quantile of all the values in
#' a cluster constitute the core cell set; pcst - cells with scEntropy lower than
#' the ss.threshold quantile of all the values in a cluster constitute the prize
#' nodes, linear prize-collecting steiner tree algorithm is used to approximate an
#' optimal subnetwork, the cells in the subnetwork constitute the core cell set.
#' Stable states are defined as the centroids of the core cell sets. Domain: {all,
#' top, pcst}. Default: all. Format: character.
#' @param ss.threshold The threshold used when ss.method is "top" or "pcst".
#' Default: 0.25. Domain: U(0, 1). Default: 0.25. Format: numeric.
#' @param community.method The method for network community detection. Most of the
#' community detection methods implemented in the igraph package are supported,
#' including "fast_greedy", "edge_betweenness", "label_prop",
#' "leading_eigen","louvain","spinglass", "walktrap". If this parameter is set to
#' "auto", the algorithm will perform all the community detection methods and
#' select the one that generates the communities with best modularity. Only take
#' effect when lm.method is "graph". Domain: {fast_greedy, edge_betweenness,
#' label_prop, leading_eigen, louvain, spinglass, walktrap, auto}. Default:
#' louvain. Format: character.
#' @param cluster.method Use "kmeans" or "pam" to divide cells into clusters. Only
#' take effect when lm.method is "clustering". Domain: {kmeans, pam}. Default:
#' kmeans. Format: character.
#' @param k The number of cell clusters. If NULL, Gap statistic will be used to
#' determine an optimal k. Domain: U(0, 20). Default: 0. Format: integer.
#' @param k.max The "k.max" parameter of cluster::clusGap(); used when k is NULL.
#' Domain: U(3, 20). Default: 10. Format: integer.
#' @param B The "B" parameter of cluster::clusGap(); used when k is NULL. Domain:
#' U(3, 500). Default: 100. Format: integer.
#' @param k.opt.method The "method" parameter of cluster::maxSE(); used when k is
#' NULL. Domain: {firstmax, globalmax, Tibs2001SEmax, firstSEmax, globalSEmax}.
#' Default: firstmax. Format: character.
#'
#' @keywords method
#'
#' @return A TI method wrapper to be used together with
#' \code{\link[dynwrap:infer_trajectories]{infer_trajectory}}
#' @export
ti_slice <- function(
lm.method = "clustering",
model.type = "tree",
ss.method = "all",
ss.threshold = 0.25,
community.method = "louvain",
cluster.method = "kmeans",
k = 0L,
k.max = 10L,
B = 100L,
k.opt.method = "firstmax"
) {
method_choose_backend(
package_repository = NULL,
package_name = NULL,
function_name = NULL,
package_version = NULL,
container_id = "dynverse/ti_slice:v0.9.9.01"
)(
lm.method = lm.method,
model.type = model.type,
ss.method = ss.method,
ss.threshold = ss.threshold,
community.method = community.method,
cluster.method = cluster.method,
k = k,
k.max = k.max,
B = B,
k.opt.method = k.opt.method
)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.