Acarbose modulates microglial Pkm2 acetylation to reshape immunometabolism and preserve retinal neurons after ischemia-reperfusion.
The 2 matches
- [1] § Materials and methods › ScRNA-seq analysis ↔ R/generics.R, lines 109–170 · score 0.68 · quality control, Fold Change, FindMarkers, Seurat, seq, gene
- [2] § Materials and methods › ScRNA-seq analysis ↔ R/differential_expression.R, lines 455–538 · score 0.65 · Fold Change, FindMarkers, scRNA, utilized, Seurat, ratio
Paper
Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC
The paper is loaded when this pane is shown.
The authors' code
R · 842 lines · 28 KB · other · 1 match
- #' @include reexports.R
- #'
- NULL
- #%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- # Generics
- #%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- #' Calculate module scores for feature expression programs in single cells
- #'
- #' Calculate the average expression levels of each program (cluster) on single
- #' cell level, subtracted by the aggregated expression of control feature sets.
- #' All analyzed features are binned based on averaged expression, and the
- #' control features are randomly selected from each bin.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @return Returns a Seurat object with module scores added to object meta data;
- #' each module is stored as \code{name#} for each module program present in
- #' \code{features}
- #'
- #' @references Tirosh et al, Science (2016)
- #'
- #' @export
- #' @concept utilities
- #'
- AddModuleScore <- function(object, ...) {
- UseMethod(generic = 'AddModuleScore', object = object)
- }
- #' Add info to anchor matrix
- #'
- #' @param anchors An \code{\link{AnchorSet}} object
- #' @param vars Variables to pull for each object via FetchData
- #' @param slot Slot to pull feature data for
- #' @param assay Specify the Assay per object if annotating with expression data
- #' @param ... Arguments passed to other methods
- #
- #' @return Returns the anchor dataframe with additional columns for annotation
- #' metadata
- #'
- #' @export
- #'
- AnnotateAnchors <- function(anchors, vars, slot, ...) {
- UseMethod(generic = 'AnnotateAnchors', object = anchors)
- }
- #' Convert objects to CellDataSet objects
- #'
- #' @param x An object to convert to class \code{CellDataSet}
- #' @param ... Arguments passed to other methods
- #'
- #' @rdname as.CellDataSet
- #' @export as.CellDataSet
- #'
- as.CellDataSet <- function(x, ...) {
- UseMethod(generic = 'as.CellDataSet', object = x)
- }
- #' Convert objects to SingleCellExperiment objects
- #'
- #' @param x An object to convert to class \code{SingleCellExperiment}
- #' @param ... Arguments passed to other methods
- #'
- #' @rdname as.SingleCellExperiment
- #' @export as.SingleCellExperiment
- #'
- as.SingleCellExperiment <- function(x, ...) {
- UseMethod(generic = 'as.SingleCellExperiment', object = x)
- }
- #' Cluster Determination
- #'
- #' Identify clusters of cells by a shared nearest neighbor (SNN) modularity
- #' optimization based clustering algorithm. First calculate k-nearest neighbors
- #' and construct the SNN graph. Then optimize the modularity function to
- #' determine clusters. For a full description of the algorithms, see Waltman and
- #' van Eck (2013) \emph{The European Physical Journal B}. Thanks to Nigel
- #' Delaney (evolvedmicrobe@github) for the rewrite of the Java modularity
- #' optimizer code in Rcpp!
- #'
- #' To run Leiden algorithm, you must first install the leidenalg python
- #' package (e.g. via pip install leidenalg), see Traag et al (2018).
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @return Returns a Seurat object where the idents have been updated with new cluster info;
- #' latest clustering results will be stored in object metadata under 'seurat_clusters'.
- #' Note that 'seurat_clusters' will be overwritten everytime FindClusters is run
- #'
- #' @export
- #'
- #' @rdname FindClusters
- #' @export FindClusters
- #'
- FindClusters <- function(object, ...) {
- UseMethod(generic = 'FindClusters', object = object)
- }
- #' Gene expression markers of identity classes
- #'
- #' Finds markers (differentially expressed genes) for each of the identity classes in a dataset. Note that differential expression between groups (e.g. treatment conditions) should account for biological variation across samples, e.g. by using pseudobulk expression profiles.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods and to specific DE methods
- #' @return data.frame with a ranked list of putative markers as rows, and associated
- #' statistics as columns (p-values, ROC score, etc., depending on the test used (\code{test.use})). The following columns are always present:
- #' \itemize{
- #' \item \code{avg_logFC}: log fold-chage of the average expression between the two groups. Positive values indicate that the gene is more highly expressed in the first group
- #' \item \code{pct.1}: The percentage of cells where the gene is detected in the first group
- #' \item \code{pct.2}: The percentage of cells where the gene is detected in the second group
- #' \item \code{p_val_adj}: Adjusted p-value, based on bonferroni correction using all genes in the dataset
- #' }
- #'
- #' @details p-value adjustment is performed using bonferroni correction based on
- #' the total number of genes in the dataset. Other correction methods are not
- #' recommended, as Seurat pre-filters genes using the arguments above, reducing
- #' the number of tests performed. Lastly, as Aaron Lun has pointed out, p-values
- #' should be interpreted cautiously, as the genes used for clustering are the
- #' same genes tested for differential expression.
- #'
- #' @references McDavid A, Finak G, Chattopadyay PK, et al. Data exploration,
- #' quality control and testing in single-cell qPCR-based gene expression experiments.
- #' Bioinformatics. 2013;29(4):461-467. doi:10.1093/bioinformatics/bts714
- #' @references Trapnell C, et al. The dynamics and regulators of cell fate
- #' decisions are revealed by pseudotemporal ordering of single cells. Nature
- #' Biotechnology volume 32, pages 381-386 (2014)
- #' @references Andrew McDavid, Greg Finak and Masanao Yajima (2017). MAST: Model-based
- #' Analysis of Single Cell Transcriptomics. R package version 1.2.1.
- #' https://github.com/RGLab/MAST/
- #' @references Love MI, Huber W and Anders S (2014). "Moderated estimation of
- #' fold change and dispersion for RNA-seq data with DESeq2." Genome Biology.
- #' https://bioconductor.org/packages/release/bioc/html/DESeq2.html
- #'
- #' @note See the DE vignette for more details and examples
- #'
- #' @export
- #'
- #' @examples
- #' \dontrun{
- #' data("pbmc_small")
- #' # Find markers for cluster 2
- #' markers <- FindMarkers(object = pbmc_small, ident.1 = 2)
- #' head(x = markers)
- #'
- #' # Within cluster 2, find markers for cells in the 'g1' group compared with
- #' # other cells, using the 'groups' metadata variable.
- #' markers <- FindMarkers(pbmc_small, ident.1 = "g1", group.by = 'groups', subset.ident = "2")
- #' head(x = markers)
- #'
- #' # Pass 'clustertree' or an object of class phylo to ident.1 and
- #' # a node to ident.2 as a replacement for FindMarkersNode
- #' if (requireNamespace("ape", quietly = TRUE)) {
- #' pbmc_small <- BuildClusterTree(object = pbmc_small)
- #' markers <- FindMarkers(object = pbmc_small, ident.1 = 'clustertree', ident.2 = 5)
- #' head(x = markers)
- #' }
- #' }
- #'
- #' @rdname FindMarkers
- #' @export FindMarkers
- #'
- #' @aliases FindMarkersNode
- #'
- FindMarkers <- function(object, ...) {
- UseMethod(generic = 'FindMarkers', object = object)
- }
- #' (Shared) Nearest-neighbor graph construction
- #'
- #' Computes the \code{k.param} nearest neighbors for a given dataset. Can also
- #' optionally (via \code{compute.SNN}), construct a shared nearest neighbor
- #' graph by calculating the neighborhood overlap (Jaccard index) between every
- #' cell and its \code{k.param} nearest neighbors.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @return This function can either return a \code{\link[SeuratObject]{Neighbor}} object
- #' with the KNN information or a list of \code{\link[SeuratObject]{Graph}} objects with
- #' the KNN and SNN depending on the settings of \code{return.neighbor} and
- #' \code{compute.SNN}. When running on a \code{\link[SeuratObject]{Seurat}} object, this
- #' returns the \code{\link[SeuratObject]{Seurat}} object with the Graphs or Neighbor objects
- #' stored in their respective slots. Names of the Graph or Neighbor object can
- #' be found with \code{\link[SeuratObject]{Graphs}} or \code{\link[SeuratObject]{Neighbors}}.
- #'
- #' @examples
- #' data("pbmc_small")
- #' pbmc_small
- #' # Compute an SNN on the gene expression level
- #' pbmc_small <- FindNeighbors(pbmc_small, features = VariableFeatures(object = pbmc_small))
- #'
- #' # More commonly, we build the SNN on a dimensionally reduced form of the data
- #' # such as the first 10 principle components.
- #'
- #' pbmc_small <- FindNeighbors(pbmc_small, reduction = "pca", dims = 1:10)
- #'
- #' @rdname FindNeighbors
- #' @export FindNeighbors
- #'
- FindNeighbors <- function(object, ...) {
- UseMethod(generic = 'FindNeighbors', object = object)
- }
- #' Find variable features
- #'
- #' Identifies features that are outliers on a 'mean variability plot'.
- #'
- #' For the mean.var.plot method:
- #' Exact parameter settings may vary empirically from dataset to dataset, and
- #' based on visual inspection of the plot. Setting the y.cutoff parameter to 2
- #' identifies features that are more than two standard deviations away from the
- #' average dispersion within a bin. The default X-axis function is the mean
- #' expression level, and for Y-axis it is the log(Variance/mean). All mean/variance
- #' calculations are not performed in log-space, but the results are reported in
- #' log-space - see relevant functions for exact details.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @rdname FindVariableFeatures
- #' @export FindVariableFeatures
- #'
- #' @aliases FindVariableGenes
- #'
- FindVariableFeatures <- function(object, ...) {
- UseMethod(generic = 'FindVariableFeatures', object = object)
- }
- #' Find spatially variable features
- #'
- #' Identify features whose variability in expression can be explained to some
- #' degree by spatial location.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @rdname FindSpatiallyVariableFeatures
- #' @export FindSpatiallyVariableFeatures
- #'
- FindSpatiallyVariableFeatures <- function(object, ...) {
- UseMethod(generic = 'FindSpatiallyVariableFeatures', object = object)
- }
- #' Fold Change
- #'
- #' Calculate log fold change and percentage of cells expressing each feature
- #' for different identity classes.
- #'
- #' If the slot is \code{scale.data} or a reduction is specified, average difference
- #' is returned instead of log fold change and the column is named "avg_diff".
- #' Otherwise, log2 fold change is returned with column named "avg_log2_FC".
- #'
- #' @examples
- #' \dontrun{
- #' data("pbmc_small")
- #' FoldChange(pbmc_small, ident.1 = 1)
- #' }
- #'
- #' @param object A Seurat object
- #' @param ... Arguments passed to other methods
- #' @rdname FoldChange
- #' @export FoldChange
- #' @return Returns a data.frame
- #' @seealso \code{FindMarkers}
- FoldChange <- function(object, ...) {
- UseMethod(generic = 'FoldChange', object = object)
- }
- #' Get an Assay object from a given Seurat object.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @return Returns an Assay object
- #'
- #' @rdname GetAssay
- #' @export GetAssay
- #'
- GetAssay <- function(object, ...) {
- UseMethod(generic = 'GetAssay', object = object)
- }
- #' Integrate low dimensional embeddings
- #'
- #' Perform dataset integration using a pre-computed Anchorset of specified low
- #' dimensional representations.
- #'
- #' The main steps of this procedure are identical to \code{\link{IntegrateData}}
- #' with one key distinction. When computing the weights matrix, the distance
- #' calculations are performed in the full space of integrated embeddings when
- #' integrating more than two datasets, as opposed to a reduced PCA space which
- #' is the default behavior in \code{\link{IntegrateData}}.
- #'
- #' @param anchorset An AnchorSet object
- #' @param new.reduction.name Name for new integrated dimensional reduction.
- #' @param reductions Name of reductions to be integrated. For a
- #' TransferAnchorSet, this should be the name of a reduction present in the
- #' anchorset object (for example, "pcaproject"). For an IntegrationAnchorSet,
- #' this should be a \code{\link[SeuratObject]{DimReduc}} object containing all cells present
- #' in the anchorset object.
- #' @param dims.to.integrate Number of dimensions to return integrated values for
- #' @param weight.reduction Dimension reduction to use when calculating anchor
- #' weights. This can be one of:
- #' \itemize{
- #' \item{A string, specifying the name of a dimension reduction present in
- #' all objects to be integrated}
- #' \item{A vector of strings, specifying the name of a dimension reduction to
- #' use for each object to be integrated}
- #' \item{A vector of \code{\link[SeuratObject]{DimReduc}} objects, specifying the object to
- #' use for each object in the integration}
- #' \item{NULL, in which case the full corrected space is used for computing
- #' anchor weights.}
- #' }
- #' @param ... Reserved for internal use
- #'
- #' @return When called on a TransferAnchorSet (from FindTransferAnchors), this
- #' will return the query object with the integrated embeddings stored in a new
- #' reduction. When called on an IntegrationAnchorSet (from IntegrateData), this
- #' will return a merged object with the integrated reduction stored.
- #'
- #' @rdname IntegrateEmbeddings
- #' @export IntegrateEmbeddings
- #'
- IntegrateEmbeddings <- function(anchorset, ...) {
- UseMethod(generic = "IntegrateEmbeddings", object = anchorset)
- }
- #' Leverage Score Calculation
- #'
- #' This function computes the leverage scores for a given object
- #' It uses the concept of sketching and random projections. The function provides an approximation
- #' to the leverage scores using a scalable method suitable for large matrices.
- #'
- #' @param object A matrix-like object
- #' @param ... Arguments passed to other methods
- #'
- #' @references Clarkson, K. L. & Woodruff, D. P.
- #' Low-rank approximation and regression in input sparsity time.
- #' JACM 63, 1–45 (2017). \doi{10.1145/3019134};
- #'
- #' @export
- #'
- LeverageScore <- function(object, ...) {
- UseMethod(generic = 'LeverageScore', object = object)
- }
- #' Normalize Raw Data
- #'
- #' @param data Matrix with the raw count data
- #' @param scale.factor Scale the data; default is \code{1e4}
- #' @param margin Margin to normalize over
- #' @param verbose Print progress
- #'
- #' @return A matrix with the normalized and log-transformed data
- #'
- #' @template param-dotsm
- #'
- #' @export
- #' @concept preprocessing
- #'
- #' @examples
- #' mat <- matrix(data = rbinom(n = 25, size = 5, prob = 0.2), nrow = 5)
- #' mat
- #' mat_norm <- LogNormalize(data = mat)
- #' mat_norm
- #'
- LogNormalize <- function(
- data,
- scale.factor = 1e4,
- margin = 2L,
- verbose = TRUE,
- ...
- ) {
- UseMethod(generic = 'LogNormalize', object = data)
- }
- #' Metric for evaluating mapping success
- #'
- #' This metric was designed to help identify query cells that aren't well
- #' represented in the reference dataset. The intuition for the score is that we
- #' are going to project the query cells into a reference-defined space and then
- #' project them back onto the query. By comparing the neighborhoods before and
- #' after projection, we identify cells who's local neighborhoods are the most
- #' affected by this transformation. This could be because there is a population
- #' of query cells that aren't present in the reference or the state of the cells
- #' in the query is significantly different from the equivalent cell type in the
- #' reference.
- #'
- #' @param anchors Set of anchors
- #' @param ... Arguments passed to other methods
- #'
- #' @rdname MappingScore
- #' @export MappingScore
- #'
- MappingScore <- function(anchors, ...) {
- UseMethod(generic = "MappingScore", object = anchors)
- }
- #' Normalize Data
- #'
- #' Normalize the count data present in a given assay.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @return Returns object after normalization
- #'
- #' @rdname NormalizeData
- #' @export NormalizeData
- #'
- NormalizeData <- function(object, ...) {
- UseMethod(generic = 'NormalizeData', object = object)
- }
- #' Project query data to the reference dimensional reduction
- #'
- #'
- #' @param query An object for query cells
- #' @param reference An object for reference cells
- #' @param query.assay Assay name for query object
- #' @param reference.assay Assay name for reference object
- #' @param reduction Name of dimensional reduction from reference object
- #' @param dims Dimensions used for reference dimensional reduction
- #' @param scale Determine if scale query data based on reference data variance
- #' @param verbose Print progress
- #' @param feature.mean Mean of features in reference
- #' @param feature.sd Standard variance of features in reference
- #'
- #' @return A matrix with projected cell embeddings
- #'
- #' @rdname ProjectCellEmbeddings
- #' @export ProjectCellEmbeddings
- #'
- #' @keywords internal
- #'
- ProjectCellEmbeddings <- function(
- query,
- ...
- ) {
- UseMethod(generic = 'ProjectCellEmbeddings', object = query)
- }
- #' Project query into UMAP coordinates of a reference
- #'
- #' This function will take a query dataset and project it into the coordinates
- #' of a provided reference UMAP. This is essentially a wrapper around two steps:
- #' \itemize{
- #' \item{FindNeighbors - Find the nearest reference cell neighbors and their
- #' distances for each query cell.}
- #' \item{RunUMAP - Perform umap projection by providing the neighbor set
- #' calculated above and the umap model previously computed in the reference.}
- #' }
- #'
- #' @param query Query dataset
- #'
- #' @rdname ProjectUMAP
- #' @export ProjectUMAP
- #'
- ProjectUMAP <- function(query, ...) {
- UseMethod(generic = "ProjectUMAP", object = query)
- }
- #' Pseudobulk Expression
- #'
- #' Normalize the count data present in a given assay.
- #'
- #' @param object An assay
- #' @param ... Arguments passed to other methods
- #'
- #' @return Returns object after normalization
- #'
- #' @rdname PseudobulkExpression
- #' @export PseudobulkExpression
- #' @concept utilities
- #'
- PseudobulkExpression <- function(object, ...) {
- UseMethod(generic = "PseudobulkExpression", object = object)
- }
- #' Perform Canonical Correlation Analysis
- #'
- #' Runs a canonical correlation analysis using a diagonal implementation of CCA.
- #' For details about stored CCA calculation parameters, see
- #' \code{PrintCCAParams}.
- #' @param object1 First Seurat object
- #' @param object2 Second Seurat object.
- # @param ... Arguments passed to other methods
- #'
- #' @return Returns a combined Seurat object with the CCA results stored.
- #'
- #' @seealso \code{\link[SeuratObject]{merge.Seurat}}
- #'
- #' @examples
- #' \dontrun{
- #' data("pbmc_small")
- #' pbmc_small
- #' # As CCA requires two datasets, we will split our test object into two just for this example
- #' pbmc1 <- subset(pbmc_small, cells = colnames(pbmc_small)[1:40])
- #' pbmc2 <- subset(pbmc_small, cells = colnames(x = pbmc_small)[41:80])
- #' pbmc1[["group"]] <- "group1"
- #' pbmc2[["group"]] <- "group2"
- #' pbmc_cca <- RunCCA(object1 = pbmc1, object2 = pbmc2)
- #' # Print results
- #' print(x = pbmc_cca[["cca"]])
- #' }
- #'
- #' @rdname RunCCA
- #' @export RunCCA
- #'
- RunCCA <- function(object1, object2, ...) {
- UseMethod(generic = 'RunCCA', object = object1)
- }
- #' Run Graph Laplacian Eigendecomposition
- #'
- #' Run a graph laplacian dimensionality reduction. It is used as a low
- #' dimensional representation for a cell-cell graph. The input graph
- #' should be symmetric
- #'
- #' @param object A Seurat object
- #' @param ... Arguments passed to
- #' \code{\link[RSpectra:eigs_sym]{RSpectra::eigs_sym}}
- #'
- #' @return Returns Seurat object with the Graph laplacian eigenvector
- #' calculation stored in the reductions slot
- #'
- #' @rdname RunGraphLaplacian
- #' @export RunGraphLaplacian
- #'
- RunGraphLaplacian <- function(object, ...) {
- UseMethod(generic = 'RunGraphLaplacian', object = object)
- }
- #' Run Independent Component Analysis on gene expression
- #'
- #' Run fastica algorithm from the ica package for ICA dimensionality reduction.
- #' For details about stored ICA calculation parameters, see
- #' \code{PrintICAParams}.
- #'
- #' @param object Seurat object
- #'
- #' @rdname RunICA
- #' @export RunICA
- #'
- RunICA <- function(object, ...) {
- UseMethod(generic = "RunICA", object = object)
- }
- #' Run Linear Discriminant Analysis
- #'
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @rdname RunLDA
- #' @export RunLDA
- #'
- #' @aliases RunLDA
- #'
- RunLDA <- function(object, ...) {
- UseMethod(generic = 'RunLDA', object = object)
- }
- #' Run Principal Component Analysis
- #'
- #' Run a PCA dimensionality reduction. For details about stored PCA calculation
- #' parameters, see \code{PrintPCAParams}.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods and IRLBA
- #'
- #' @return Returns Seurat object with the PCA calculation stored in the reductions slot
- #'
- #' @export
- #'
- #' @rdname RunPCA
- #' @export RunPCA
- #'
- RunPCA <- function(object, ...) {
- UseMethod(generic = 'RunPCA', object = object)
- }
- #' Run Supervised Latent Semantic Indexing
- #'
- #' Run a supervised LSI (SLSI) dimensionality reduction supervised by a
- #' cell-cell kernel. SLSI is used to capture a linear transformation of peaks
- #' that maximizes its dependency to the given cell-cell kernel.
- #'
- #' @param object An object
- #' @param ... Arguments passed to IRLBA irlba
- #'
- #' @return Returns Seurat object with the SLSI calculation stored in the
- #' reductions slot
- #'
- #' @export
- #'
- #' @rdname RunSLSI
- #' @export RunSLSI
- #'
- RunSLSI <- function(object, ...) {
- UseMethod(generic = 'RunSLSI', object = object)
- }
- #' Run Supervised Principal Component Analysis
- #'
- #' Run a supervised PCA (SPCA) dimensionality reduction supervised by a cell-cell kernel.
- #' SPCA is used to capture a linear transformation which maximizes its dependency to
- #' the given cell-cell kernel. We use SNN graph as the kernel to supervise the linear
- #' matrix factorization.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods and IRLBA
- #'
- #' @return Returns Seurat object with the SPCA calculation stored in the reductions slot
- #' @references Barshan E, Ghodsi A, Azimifar Z, Jahromi MZ.
- #' Supervised principal component analysis: Visualization, classification and
- #' regression on subspaces and submanifolds.
- #' Pattern Recognition. 2011 Jul 1;44(7):1357-71. \url{doi:10.1016/j.patcog.2010.12.015};
- #' @export
- #'
- #' @rdname RunSPCA
- #' @export RunSPCA
- #'
- RunSPCA <- function(object, ...) {
- UseMethod(generic = 'RunSPCA', object = object)
- }
- #' Run t-distributed Stochastic Neighbor Embedding
- #'
- #' Run t-SNE dimensionality reduction on selected features. Has the option of
- #' running in a reduced dimensional space (i.e. spectral tSNE, recommended),
- #' or running based on a set of genes. For details about stored TSNE calculation
- #' parameters, see \code{PrintTSNEParams}.
- #'
- #' @param object Seurat object
- #' @param ... Arguments passed to other methods and to t-SNE call (most commonly used is perplexity)
- #'
- #' @rdname RunTSNE
- #' @export RunTSNE
- #'
- RunTSNE <- function(object, ...) {
- UseMethod(generic = 'RunTSNE', object = object)
- }
- #' Run UMAP
- #'
- #' Runs the Uniform Manifold Approximation and Projection (UMAP) dimensional
- #' reduction technique. To run using \code{umap.method="umap-learn"}, you must
- #' first install the umap-learn python package (e.g. via
- #' \code{pip install umap-learn}). Details on this package can be
- #' found here: \url{https://github.com/lmcinnes/umap}. For a more in depth
- #' discussion of the mathematics underlying UMAP, see the ArXiv paper here:
- #' \url{https://arxiv.org/abs/1802.03426}.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods and UMAP
- #'
- #' @return Returns a Seurat object containing a UMAP representation
- #'
- #' @references McInnes, L, Healy, J, UMAP: Uniform Manifold Approximation and
- #' Projection for Dimension Reduction, ArXiv e-prints 1802.03426, 2018
- #'
- #' @export
- #'
- #' @examples
- #' \dontrun{
- #' data("pbmc_small")
- #' pbmc_small
- #' # Run UMAP map on first 5 PCs
- #' pbmc_small <- RunUMAP(object = pbmc_small, dims = 1:5)
- #' # Plot results
- #' DimPlot(object = pbmc_small, reduction = 'umap')
- #' }
- #'
- #' @rdname RunUMAP
- #' @export RunUMAP
- #'
- RunUMAP <- function(object, ...) {
- UseMethod(generic = 'RunUMAP', object = object)
- }
- #' Scale and center the data.
- #'
- #' Scales and centers features in the dataset. If variables are provided in vars.to.regress,
- #' they are individually regressed against each feature, and the resulting residuals are
- #' then scaled and centered.
- #'
- #' ScaleData now incorporates the functionality of the function formerly known
- #' as RegressOut (which regressed out given the effects of provided variables
- #' and then scaled the residuals). To make use of the regression functionality,
- #' simply pass the variables you want to remove to the vars.to.regress parameter.
- #'
- #' Setting center to TRUE will center the expression for each feature by subtracting
- #' the average expression for that feature. Setting scale to TRUE will scale the
- #' expression level for each feature by dividing the centered feature expression
- #' levels by their standard deviations if center is TRUE and by their root mean
- #' square otherwise.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @rdname ScaleData
- #' @export ScaleData
- #'
- ScaleData <- function(object, ...) {
- UseMethod(generic = 'ScaleData', object = object)
- }
- #' Get image scale factors
- #'
- #' @param object An object to get scale factors from
- #' @param ... Arguments passed to other methods
- #'
- #' @return An object of class \code{scalefactors}
- #'
- #' @rdname ScaleFactors
- #' @export ScaleFactors
- #'
- ScaleFactors <- function(object, ...) {
- UseMethod(generic = 'ScaleFactors', object = object)
- }
- #' Compute Jackstraw scores significance.
- #'
- #' Significant PCs should show a p-value distribution that is
- #' strongly skewed to the left compared to the null distribution.
- #' The p-value for each PC is based on a proportion test comparing the number
- #' of features with a p-value below a particular threshold (score.thresh), compared with the
- #' proportion of features expected under a uniform distribution of p-values.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods
- #'
- #' @return Returns a Seurat object
- #'
- #' @author Omri Wurtzel
- #' @seealso \code{\link{JackStrawPlot}}
- #'
- #' @rdname ScoreJackStraw
- #' @export ScoreJackStraw
- #'
- ScoreJackStraw <- function(object, ...) {
- UseMethod(generic = 'ScoreJackStraw', object = object)
- }
- #' Perform sctransform-based normalization
- #' @param object An object
- #' @param ... Arguments passed to other methods (not used)
- #'
- #' @rdname SCTransform
- #' @export SCTransform
- #'
- SCTransform <- function(object, ...) {
- UseMethod(generic = 'SCTransform', object = object)
- }
- #' Get SCT results from an Assay
- #'
- #' Pull the \code{\link{SCTResults}} information from an \code{\link{SCTAssay}}
- #' object.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods (not used)
- #'
- #' @rdname SCTResults
- #' @export SCTResults
- #'
- SCTResults <- function(object, ...) {
- UseMethod(generic = 'SCTResults', object = object)
- }
- #' Get the Pearson residuals from an sctransform-normalized dataset.
- #'
- #' @param object An object
- #' @param ... Arguments passed to other methods (not used)
- #'
- #' @rdname FetchResiduals
- #' @export FetchResiduals
- #'
- FetchResiduals <- function(object, ...) {
- UseMethod(generic = 'FetchResiduals', object = object)
- }
- #' @param value new data to set
- #'
- #' @rdname SCTResults
- #' @export SCTResults<-
- #'
- "SCTResults<-" <- function(object, ..., value) {
- UseMethod(generic = 'SCTResults<-', object = object)
- }
- #' Variance Stabilizing Transformation
- #'
- #' Apply variance stabilizing transformation for selection of variable features
- #'
- #' @inheritParams stats::loess
- #' @param data A matrix-like object
- #' @param margin Unused
- #' @param nselect Number of of features to select
- #' @param clip Upper bound for values post-standardization; defaults to the
- #' square root of the number of cells
- #' @param verbose ...
- #'
- #' @template param-dotsm
- #'
- #' @return A data frame with the following columns:
- #' \itemize{
- #' \item \dQuote{\code{mean}}: ...
- #' \item \dQuote{\code{variance}}: ...
- #' \item \dQuote{\code{variance.expected}}: ...
- #' \item \dQuote{\code{variance.standardized}}: ...
- #' \item \dQuote{\code{variable}}: \code{TRUE} if the feature selected as
- #' variable, otherwise \code{FALSE}
- #' \item \dQuote{\code{rank}}: If the feature is selected as variable, then how
- #' it compares to other variable features with lower ranks as more variable;
- #' otherwise, \code{NA}
- #' }
- #'
- #' @rdname VST
- #' @export VST
- #'
- #' @keywords internal
- #'
- VST <- function(
- data,
- margin = 1L,
- nselect = 2000L,
- span = 0.3,
- clip = NULL,
- ...
- ) {
- UseMethod(generic = 'VST', object = data)
- }
generics.R at commit 586015a, under other · at the source
Overview
- State Key Laboratory of Ophthalmology, Zhongshan Ophthalmic Center, Guangdong Provincial Key Laboratory of Ophthalmology and Visual Science, Sun Yat-sen University, Guangzhou, 510060 China
- Department of Neurosurgery, Xijing Hospital, Air Force Military Medical University, Xi’an, 710032 China
- Department of Ophthalmology, Shanghai Key Laboratory of Orbital Diseases and Ocular Oncology, Shanghai Ninth People’s Hospital, Shanghai Jiao Tong University School of Medicine, Shanghai, 200011 China
Abstract
The abstract is not reproduced here: the paper's license (CC BY-NC-ND) does not allow it. Read it in the paper, at the publisher or on Europe PMC.
Repository
Its files are read in the Code ↔ Paper reader above, with 2 matches between paragraphs and lines of code.
satijalab/seurat
586015abde10618ecb32d3fe632267a83317a08d, 21 September 2026Availability: 1 check, the latest on 27 September 2026: the link answers
- 27 September 2026: the link answers
130 files
- R/
RcppExports.R , R, 123 lines - R/
clustering.R , R, 1,908 lines - R/
convenience.R , R, 512 lines - R/
data.R , R, 55 lines - R/
differential_expression. , R, 2,569 lines, 1 matchR - R/
dimensional_reduction.R , R, 2,935 lines - R/
generics.R , R, 842 lines, 1 match - R/
integration.R , R, 5,665 lines - R/
integration5.R , R, 760 lines - R/
mixscape.R , R, 1,347 lines - R/
objects.R , R, 3,369 lines - R/
preprocessing.R , R, 5,956 lines - R/
preprocessing5.R , R, 1,891 lines - R/
reexports.R , R, 454 lines - R/
roxygen.R , R, 61 lines - R/
sketching.R , R, 803 lines - R/
tree.R , R, 392 lines - R/
utilities.R , R, 3,220 lines - R/
visualization.R , R, 6,161 lines - R/
zzz.R , R, 110 lines - man/
roxygen/ , R, 3 linestemplates/ note-reqdpkg.R - man/
roxygen/ , R, 1 linetemplates/ param-dotsi.R - man/
roxygen/ , R, 1 linetemplates/ param-dotsm.R - man/
roxygen/ , R, 13 linestemplates/ section-future.R - man/
roxygen/ , R, 8 linestemplates/ section-progressr.R - man/
roxygen/ , R, 1 linetemplates/ seealso-methods.R - src/
ModularityOptimizer.cpp , C++, 1,012 lines - src/
ModularityOptimizer.h , C/C++, 159 lines - src/
RModularityOptimizer.cpp , C++, 173 lines - src/
RcppExports.cpp , C++, 445 lines - src/
data_manipulation.cpp , C++, 464 lines - src/
data_manipulation.h , C/C++, 51 lines - src/
fast_NN_dist.cpp , C++, 70 lines - src/
integration.cpp , C++, 177 lines - src/
integration.h , C/C++, 37 lines - src/
snn.cpp , C++, 126 lines - src/
snn.h , C/C++, 21 lines - src/
stats.cpp , C++, 42 lines - src/
valid_pointer.c , C, 6 lines - tests/
testthat.R , R, 14 lines - tests/
testthat/ , R, 209 linestest_data_manipulation.R - tests/
testthat/ , R, 704 linestest_differential_expres sion.R - tests/
testthat/ , R, 190 linestest_dimensional_reducti on.R - tests/
testthat/ , R, 129 linestest_find_clusters.R - tests/
testthat/ , R, 117 linestest_integratedata.R - tests/
testthat/ , R, 487 linestest_integration.R - tests/
testthat/ , R, 544 linestest_integration5.R - tests/
testthat/ , R, 281 linestest_load_10X.R - tests/
testthat/ , R, 144 linestest_modularity_optimize r.R - tests/
testthat/ , R, 25 linestest_objects.R - tests/
testthat/ , R, 631 linestest_preprocessing.R - tests/
testthat/ , R, 291 linestest_sketching.R - tests/
testthat/ , R, 509 linestest_spatial.R - tests/
testthat/ , R, 143 linestest_transferdata.R - tests/
testthat/ , R, 54 linestest_tree.R - tests/
testthat/ , R, 476 linestest_utilities.R - tests/
testthat/ , R, 54 linestest_visualization.R - vignettes/
COVID_SCTMapping.Rmd , R, 180 lines - vignettes/
ParseBio_sketch_integrat , R, 180 linesion.Rmd - vignettes/
announcements.Rmd , R, 56 lines - vignettes/
archive.Rmd , R, 41 lines - vignettes/
atacseq_integration_vign , R, 231 linesette.Rmd - vignettes/
cell_cycle_vignette.Rmd , R, 139 lines - vignettes/
conversion_vignette.Rmd , R, 132 lines - vignettes/
de_vignette.Rmd , R, 212 lines - vignettes/
dim_reduction_vignette.R , R, 119 linesmd - vignettes/
essential_commands.Rmd , R, 427 lines - vignettes/
extensions.Rmd , R, 38 lines - vignettes/
future_vignette.Rmd , R, 133 lines - vignettes/
get_started.Rmd , R, 159 lines - vignettes/
get_started_v5.Rmd , R, 140 lines - vignettes/
get_started_v5_new.Rmd , R, 172 lines - vignettes/
hashing_vignette.Rmd , R, 285 lines - vignettes/
install.Rmd , R, 120 lines - vignettes/
install_v5.Rmd , R, 84 lines - vignettes/
integration_introduction , R, 246 lines.Rmd - vignettes/
integration_large_datase , R, 119 linests.Rmd - vignettes/
integration_mapping.Rmd , R, 178 lines - vignettes/
integration_rpca.Rmd , R, 187 lines - vignettes/
interaction_vignette.Rmd , R, 149 lines - vignettes/
merge_vignette.Rmd , R, 109 lines - vignettes/
mixscape_vignette.Rmd , R, 375 lines - vignettes/
multimodal_reference_map , R, 387 linesping.Rmd - vignettes/
multimodal_vignette.Rmd , R, 243 lines - vignettes/
pbmc3k_tutorial.Rmd , R, 376 lines - vignettes/
sctransform_v2_vignette. , R, 230 linesRmd - vignettes/
sctransform_vignette.Rmd , R, 144 lines - vignettes/
seurat5_archive.Rmd , R, 41 lines - vignettes/
seurat5_atacseq_integrat , R, 221 linesion_vignette.Rmd - vignettes/
seurat5_bpcells_interact , R, 212 linesion_vignette.Rmd - vignettes/
seurat5_cell_cycle_vigne , R, 150 linestte.Rmd - vignettes/
seurat5_conversion_vigne , R, 132 linestte.Rmd - vignettes/
seurat5_de_vignette.Rmd , R, 143 lines - vignettes/
seurat5_dim_reduction_vi , R, 119 linesgnette.Rmd - vignettes/
seurat5_essential_comman , R, 220 linesds.Rmd - vignettes/
seurat5_extensions.Rmd , R, 35 lines - vignettes/
seurat5_future_vignette. , R, 134 linesRmd - vignettes/
seurat5_get_started.Rmd , R, 159 lines - vignettes/
seurat5_hashing_vignette , R, 291 lines.Rmd - vignettes/
seurat5_integration.Rmd , R, 220 lines - vignettes/
seurat5_integration_brid , R, 284 linesge.Rmd - vignettes/
seurat5_integration_intr , R, 273 linesoduction.Rmd - vignettes/
seurat5_integration_larg , R, 125 linese_datasets.Rmd - vignettes/
seurat5_integration_mapp , R, 211 linesing.Rmd - vignettes/
seurat5_integration_rpca , R, 191 lines.Rmd - vignettes/
seurat5_interaction_vign , R, 146 linesette.Rmd - vignettes/
seurat5_merge_vignette.R , R, 109 linesmd - vignettes/
seurat5_mixscape_vignett , R, 372 linese.Rmd - vignettes/
seurat5_multimodal_refer , R, 396 linesence_mapping.Rmd - vignettes/
seurat5_multimodal_vigne , R, 240 linestte.Rmd - vignettes/
seurat5_pbmc3k_tutorial. , R, 395 linesRmd - vignettes/
seurat5_sctransform_inte , R, 90 linesgration.Rmd - vignettes/
seurat5_sctransform_v2_v , R, 231 linesignette.Rmd - vignettes/
seurat5_sctransform_vign , R, 156 linesette.Rmd - vignettes/
seurat5_sketch_analysis. , R, 209 linesRmd - vignettes/
seurat5_spatial_vignette , R, 524 lines.Rmd - vignettes/
seurat5_spatial_vignette , R, 570 lines_2.Rmd - vignettes/
seurat5_v4_changes.Rmd , R, 38 lines - vignettes/
seurat5_visualization_vi , R, 249 linesgnette.Rmd - vignettes/
seurat5_weighted_nearest , R, 451 lines_neighbor_analysis.Rmd - vignettes/
spatial_vignette.Rmd , R, 603 lines - vignettes/
spatial_vignette_2.Rmd , R, 734 lines - vignettes/
v4_changes.Rmd , R, 38 lines - vignettes/
visiumhd_analysis_cell_s , R, 451 linesegmentations.Rmd - vignettes/
visiumhd_analysis_vignet , R, 559 lineste.Rmd - vignettes/
visualization_vignette.R , R, 241 linesmd - vignettes/
weighted_nearest_neighbo , R, 442 linesr_analysis.Rmd - LICENSE, License, 2 lines
- LICENSE.md, License, 21 lines
- README.md, Text, 23 lines
Tracing map
Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.
What the map holds:
- 1 repository of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 127 scripts, each with its path and the digest of its content;
- 2 matches between paragraphs of the paper and lines of the code (method lexical-v1);
- neither the text of the paper nor the code itself.
Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.
Data
No dataset and no data link were found in the paper.
Data availability statement
The paper has a data availability statement. Its license (CC BY-NC-ND) does not allow reproducing it here; in short, from what the harvester recognized in it:
- it says that the data are available on request
Read it in the paper: doi.org/10.1186/s12974-026-03838-8.
Versions
The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.
Version 1, 28 September 2026: the first record
Recorded: type, language, journal, volume, issue, pages, dates, 11 authors, 6 keywords, 11 MeSH terms, 4 funders, 89 references, 1 RRID.
Cite
This paper
Wen, Y., Dou, Y.-n., Chen, X., Liu, X., Yang, Z., Zhu, Y., Li, Z., Deng, C., Deng, Y., Su, W., & Zhuo, Y. (2026). Acarbose modulates microglial Pkm2 acetylation to reshape immunometabolism and preserve retinal neurons after ischemia-reperfusion. Journal of neuroinflammation, 23(1), 206. https://
BibTeX
@article{wen2026acarbose
author = {Wen, Yuwen and Dou, Ya-nan and Chen, Xiaohong and Liu, Xiuxing and Yang, Zhenlan and Zhu, Yingting and Li, Zhidong and Deng, Caibin and Deng, Ye and Su, Wenru and Zhuo, Yehong},
title = {{Acarbose modulates microglial Pkm2 acetylation to reshape immunometabolism and preserve retinal neurons after ischemia-reperfusion}},
journal = {Journal of neuroinflammation},
year = {2026},
month = may,
volume = {23},
number = {1},
pages = {206},
publisher = {BMC},
issn = {1742-2094},
doi = {10.1186/
url = {https://
pmid = {42069589},
pmcid = {PMC13281619}
}
RIS
TY - JOUR
AU - Wen, Yuwen
AU - Dou, Ya-nan
AU - Chen, Xiaohong
AU - Liu, Xiuxing
AU - Yang, Zhenlan
AU - Zhu, Yingting
AU - Li, Zhidong
AU - Deng, Caibin
AU - Deng, Ye
AU - Su, Wenru
AU - Zhuo, Yehong
TI - Acarbose modulates microglial Pkm2 acetylation to reshape immunometabolism and preserve retinal neurons after ischemia-reperfusion
T2 - Journal of neuroinflammation
J2 - J Neuroinflammation
PY - 2026
DA - 2026/
VL - 23
IS - 1
SP - 206
SN - 1742-2094
PB - BMC
DO - 10.1186/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.1186/
"type": "article-journal",
"title": "Acarbose modulates microglial Pkm2 acetylation to reshape immunometabolism and preserve retinal neurons after ischemia-reperfusion",
"container-title": "Journal of neuroinflammation",
"author": [
{
"family": "Wen",
"given": "Yuwen"
},
{
"family": "Dou",
"given": "Ya-nan"
},
{
"family": "Chen",
"given": "Xiaohong"
},
{
"family": "Liu",
"given": "Xiuxing"
},
{
"family": "Yang",
"given": "Zhenlan"
},
{
"family": "Zhu",
"given": "Yingting"
},
{
"family": "Li",
"given": "Zhidong"
},
{
"family": "Deng",
"given": "Caibin"
},
{
"family": "Deng",
"given": "Ye"
},
{
"family": "Su",
"given": "Wenru"
},
{
"family": "Zhuo",
"given": "Yehong"
}
],
"container-title-short":
"volume": "23",
"issue": "1",
"page": "206",
"DOI": "10.1186/
"PMID": "42069589",
"PMCID": "PMC13281619",
"ISSN": "1742-2094",
"publisher": "BMC",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
5,
2
]
]
}
}
The tracing map gets a citation of its own once an author has validated it and it has a DOI.
Similar papers
The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.
- [1] doi:10.1002/imt2.70163 [code]
- Spatial multi-omics unveils sphingolipid metabolic reprogramming within the retinal pathological niche.Journal: iMetaIn common: Monocle 3, Harmony, SingleCellExperiment, 11 other tools, genetics / omics, mouse, cellular / molecular, 4 references
- [2] doi:10.1002/ctm2.70683 [code]
- Niacin promotes motor function recovery after spinal cord injury via Hcar2-dependent microglia immunometabolic regulation.Journal: Clinical and translational medicineIn common: Monocle 3, Harmony, SingleCellExperiment, 13 other tools, genetics / omics, mouse, cellular / molecular, 2 references
- [3] doi:10.7554/elife.93640 [code]
- Sibling chimerism among microglia in marmosets.Journal: eLifeIn common: Monocle 3, Harmony, SingleCellExperiment, 13 other tools, genetics / omics, cellular / molecular
- [4] doi:10.1038/s41420-026-02971-w [code]
- Multi-omics reveals heterogeneity and functional populations of oligodendrocyte progenitor cells induced by human neural stem cells.Journal: Cell death discoveryIn common: Monocle 3, Harmony, SingleCellExperiment, 13 other tools, genetics / omics, cellular / molecular
- [5] doi:10.1038/s44318-026-00818-9 [code]
- FAM134B-mediated ER-phagy degrades APP and suppresses Alzheimer's disease pathology.Journal: The EMBO journalIn common: Monocle 3, Harmony, SingleCellExperiment, 13 other tools, mouse, cellular / molecular
- [6] doi:10.1016/j.xcrm.2026.102766 [code]
- A longitudinal single-cell and spatial multiomic atlas of pediatric high-grade glioma.Journal: Cell reports. MedicineIn common: Monocle 3, Harmony, SingleCellExperiment, 12 other tools, genetics / omics, cellular / molecular, 1 reference
- [7] doi:10.1038/s41593-026-02367-0 [code]
- A reproducible three-dimensional model of human brain tissue to investigate physiological and disease-associated microglia phenotypes.Journal: Nature neuroscienceIn common: Monocle 3, Harmony, SingleCellExperiment, 11 other tools, cellular / molecular, 1 reference
- [8] doi:10.1016/j.xcrm.2026.102651 [code]
- Integrative CSF profiling identifies disease-specific immune responses in leptomeningeal disease.Journal: Cell reports. MedicineIn common: Harmony, SingleCellExperiment, reticulate, 11 other tools, genetics / omics, cellular / molecular
- [9] doi:10.3390/ijms27104466 [code]
- Uncovering the Key Circuit FOSL2/
FOS/ EGR3/ EGR1, Contributing to the Hyperexcitability of Excitatory Neurons in the Epileptic Temporal Cortex and Hippocampus. Journal: International journal of molecular sciencesIn common: Monocle 3, reticulate, limma, 10 other tools, genetics / omics, 1 reference - [10] doi:10.1038/s41586-026-10214-2 [code]
- Multidimensional profiling of heterogeneity in supratentorial ependymomas.Journal: NatureIn common: Monocle 3, Harmony, SingleCellExperiment, 10 other tools, genetics / omics, mouse
Contribute
The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.
Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.
Claim this paper
Correct its record
Say what each link of this record is, remove the ones that are not the paper's, add the ones that are missing. The correction becomes a new version of the record, in its Versions section.
Validate its tracing map
You validate the map as this page shows it: 1 repository of the authors' code, each at its verified commit and with its license, 127 scripts, and 2 matches between paragraphs and code (see the Code and Map sections). It then receives a DOI on Zenodo, with you (your ORCID iD) and OSCR as its creators; the code itself is not deposited.
The map's fingerprint: sha256:20c2343866512094…
Add the badge to its README
The badge links the code to this page. Copy one of these into the README of the paper's code: only you decide where it goes, and nothing is changed for you.
Markdown
[, paste the snippet at the top, then “Commit changes…” and, to review it first, “Create a new branch and start a pull request”. You open the pull request; OSCR asks for no permission.
Request its removal
To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).
Discussion, reproductions, activity
Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.
Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.
Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.
