Scop
An end-to-end Single-Cell Omics analysis Pipeline designed to facilitate comprehensive analysis and exploration of single-cell omics data.
Install / Use
/learn @mengxu98/ScopREADME
scop: Single-Cell Omics analysis Pipeline
<!-- badges: start --> <!-- badges: end -->Introduction
The scop package provides a unified and extensible framework for single-cell omics data processing and downstream analysis in Seurat:
- Integrated single-cell quality control methods, including doublet detection methods (scDblFinder, scds, Scrublet, DoubletDetection) and ambient RNA decontamination via decontX.
- Pipelines embedded with multiple methods for normalization, feature reduction (PCA, ICA, NMF, MDS, GLMPCA, UMAP, TriMap, LargeVis, PaCMAP, PHATE, DM, FR), and cell population identification.
- Pipelines embedded with multiple integration methods for scRNA-seq, including Uncorrected, Seurat, scVI, MNN, fastMNN, Harmony, Scanorama, BBKNN, CSS, Coralysis, LIGER, Conos, ComBat.
- Multiple methods for automatic annotation of single-cell data (CellTypist, SingleR, Scmap, KNNPredict) and methods for projection between single-cell datasets (CSSMap, PCAMap, SeuratMap, SymphonyMap).
- Multiple single-cell downstream analyses:
- Differential expression analysis: identification of differential features, expressed marker identification.
- Enrichment analysis: over-representation analysis, GSEA analysis, dynamic enrichment analysis.
- Cellular potency: CytoTRACE 2 for predicting cellular differentiation potential.
- RNA velocity: RNA velocity, PAGA, Palantir, CellRank, WOT.
- Trajectory inference: Slingshot, Monocle2, Monocle3, identification of dynamic features.
- Cell-Cell Communication: CellChat, CellphoneDB, NicheNet, and MultiNicheNet.
- High-quality data visualization methods.
- Fast deployment of single-cell data into SCExplorer, a shiny app that provides an interactive visualization interface.
Table of Contents
- scop: Single-Cell Omics analysis Pipeline
- Introduction
- Table of Contents
- Credits
- Installation
- Pipeline
Credits
The scop package is developed based on the SCP package, with the following major improvements:
- Compatibility: full support for Seurat v5.
- Stability: a large number of known issues have been fixed, and all functions have passed
devtools::check(). - Usability: the Python environment setup workflow has been improved, allowing a new complete environment to be deployed within minutes; standardized console messages via
thisutils::log_messagefor consistent, readable function outputs. - Performance: a new parallel framework has been developed based on
thisutils::parallelize_fun, providing a consistent experience across Linux, macOS, and Windows. - Functionality: more analysis methods have been added, including CellRank, CellTypist, CytoTRACE 2, CellChat, GSVA, scMetabolism and scProportionTest.
Installation
R requirement
- R >= 4.1.0
You can install the latest version of scop with pak from GitHub with:
if (!require("pak", quietly = TRUE)) {
install.packages("pak")
}
pak::pak("mengxu98/scop")
Python environment
To run functions such as RunPAGA(), RunSCVELO(), scop requires conda to create a separate environment. The default environment name is "scop_env". You can specify the environment name for scop by setting options(scop_envname = "new_name").
Now, you can run PrepareEnv() to create the python environment for scop. If the conda binary is not found, it will automatically download and install miniconda.
scop::PrepareEnv()
To force scop to use a specific conda binary, it is recommended to set reticulate.conda_binary R option:
options(reticulate.conda_binary = "/path/to/conda")
scop::PrepareEnv()
If the download of miniconda or pip packages is slow, you can specify the miniconda repo and PyPI mirror according to your network region.
scop::PrepareEnv(
miniconda_repo = "https://mirrors.bfsu.edu.cn/anaconda/miniconda",
pip_options = "-i https://pypi.tuna.tsinghua.edu.cn/simple"
)
-
Available miniconda repositories:
- https://repo.anaconda.com/miniconda (default)
- http://mirrors.aliyun.com/anaconda/miniconda
- https://mirrors.bfsu.edu.cn/anaconda/miniconda
- https://mirrors.pku.edu.cn/anaconda/miniconda
- https://mirror.nju.edu.cn/anaconda/miniconda
- https://mirrors.sustech.edu.cn/anaconda/miniconda
- https://mirrors.xjtu.edu.cn/anaconda/miniconda
- https://mirrors.hit.edu.cn/anaconda/miniconda
-
Available PyPI mirrors:
- https://pypi.python.org/simple (default)
- https://mirrors.aliyun.com/pypi/simple
- https://pypi.tuna.tsinghua.edu.cn/simple
- https://mirrors.pku.edu.cn/pypi/simple
- https://mirror.nju.edu.cn/pypi/web/simple
- https://mirrors.sustech.edu.cn/pypi/simple
- https://mirrors.xjtu.edu.cn/pypi/simple
- https://mirrors.hit.edu.cn/pypi/web/simple
Pipeline
Data exploration
The analysis is based on a subsetted version of mouse pancreas data.
library(scop)
data(pancreas_sub)
print(pancreas_sub)
#> An object of class Seurat
#> 47994 features across 1000 samples within 3 assays
#> Active assay: RNA (15998 features, 0 variable feat
Related Skills
clearshot
Structured screenshot analysis for UI implementation and critique. Analyzes every UI screenshot with a 5×5 spatial grid, full element inventory, and design system extraction — facts and taste together, every time. Escalates to full implementation blueprint when building. Trigger on any digital interface image file (png, jpg, gif, webp — websites, apps, dashboards, mockups, wireframes) or commands like 'analyse this screenshot,' 'rebuild this,' 'match this design,' 'clone this.' Skip for non-UI images (photos, memes, charts) unless the user explicitly wants to build a UI from them. Does NOT trigger on HTML source code, CSS, SVGs, or any code pasted as text.
openpencil
2.0kThe world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
ui-ux-designer
Use this agent when you need to design, implement, or improve user interface components and user experience flows. Examples include: creating new pages or components, improving existing UI layouts, implementing responsive designs, optimizing user interactions, building forms or dashboards, analyzing existing UI through browser snapshots, or when you need to ensure UI components follow design system standards and shadcn/ui best practices.\n\n<example>\nContext: User needs to create a new dashboard page for team management.\nuser: "I need to create a team management dashboard where users can view team members, invite new members, and manage roles"\nassistant: "I'll use the ui-ux-designer agent to design and implement this dashboard with proper UX considerations, using shadcn/ui components and our design system tokens."\n</example>\n\n<example>\nContext: User wants to improve the user experience of an existing form.\nuser: "The signup form feels clunky and users are dropping off. Can you improve it?"\nassistant: "Let me use the ui-ux-designer agent to analyze the current form UX and implement improvements using our design system and shadcn/ui components."\n</example>\n\n<example>\nContext: User wants to evaluate and improve existing UI.\nuser: "Can you take a look at our pricing page and see how we can make it more appealing and user-friendly?"\nassistant: "I'll use the ui-ux-designer agent to take a snapshot of the current pricing page, analyze the UX against Notion-inspired design principles, and implement improvements using our design tokens."\n</example>
ui-ux-pro-max-skill
57.0kAn AI SKILL that provide design intelligence for building professional UI/UX multiple platforms
