简介
简介
Scanpy 是单细胞转录组常用且主流的分析Python工具包,用于分析与anndata联合构建的单细胞基因表达数据。它包括预处理、可视化、聚类、轨迹推断和差异表达测试。能够有效地处理超过一百万个单元的数据集。
本工作流基于Scanpy 3k PBMC官方教程归纳扩展的WDL工作流,并提取常调整参数以供针对不同个性化数据进行调整。同时按下图步骤拆分10小流程供用户单独调试单个步骤结果。可在工具集搜索对应工作流,使用对应输出H5AD文件进行调试。你也可以根据我们提供的Scanpy Notebook工具进行代码调试。
详细参数说明见下文input介绍,
3.1.1qc.wdl
this workflow load files and calculate quality control metrics by scanpy.pp.calculate_qc_metrics
。
这个工作流是加载文件并通过scanpy.pp.calculate_qc_metrics
计算质量指标同时可选择的过滤原始矩阵中基因表达较少的细胞和在细胞中检测较少的基因。
3.1.2norm.wdl
this workflow normalize counts per cell and logarithmize the data matrix .
标准化每个单元的计数并将数据矩阵对数变化。
3.1.3hvg.wdl
this workflow accepts h5fd file and annotate highly variable genes ,regress out (mostly) unwanted sources of variation then cale data to unit variance and zero mean with sc.pp.highly_variable_genes ,sc.pp.regress_out and sc.pp.scale.
接受h5fd文件作为输入,注释高度可变的基因,回归出(大部分)不需要的变异源,然后将数据缩放到单位方差和零均值
3.1.4pca.wdl
Principal component analysis
主成分分析
3.1.5neighbors.wdl
Compute a neighborhood graph of observations
计算观测值的邻域图
umap.wdl/tsne.wdl
this workflow embed the neighborhood graph using umap or tsne
非线性降维
leiden.wdl/louvain.wdl
cluster cells into subgroups
细胞聚类
maker.wdl
this workflow rank genes for characterizing groups
对每个 cluster 中高度差异基因的排名
联系我们
该工具由国家基因库团队提供。如有任何问题或疑虑,请联系 CNGBdb@cngb.org
任务名称 | 变量名称 | 类型 | 描述 |
---|---|---|---|
* scanpy | project_name | String | 项目名称 |
* scanpy | infile | File | 输入矩阵文件 |
* scanpy | filetype | String | 输入文件的文件类型:csv 或者 tsv |
scanpy.umap | spread | Float | 嵌入点的有效尺度.与min_dist结合使用可确定聚类点的聚集程度/聚集方式. |
scanpy.umap | negative_sample_rate | Int | 在优化低维聚类时,每个正边/1-单纯形样本使用的负边/1-单纯形样本数 |
scanpy.umap | n_components | Int | 聚类的维数 |
scanpy.umap | min_dist | Float | 嵌入点之间的最小有效距离.较小的值将导致更多的聚集/聚集嵌入,其中流形上的相邻点绘制得更近,而较大的值将导致点的分布更加均匀.该值应相对于排列值进行设置,该值决定嵌入点将展开的比例. |
scanpy.umap | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.umap | init_pos | String | 如何初始化低维聚类,可选值['paga', 'spectral', 'random'], ndarray, None] (默认值: 'spectral') |
scanpy.umap | gamma | Float | 低维嵌入优化中负样本的加权.大于1的值将导致负数样本的权重更大. |
scanpy.umap | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.umap | alpha | Float | 嵌入优化的初始学习速率. |
scanpy.tsne | perplexity | Float | 这复杂度与其它流形学习算法中使用的最近邻数有关.较大的数据集通常需要更大的复杂性.考虑选择一个介于5和50之间的值.这个选择不是非常关键,因为t-SNE对这个参数非常不敏感. |
scanpy.tsne | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.tsne | learning_rate | Float | 请注意,R-package“Rtsne'使用默认值200.学习率可能是一个关键参数.应该在100到1000之间.如果初始优化过程中成本函数增加,则早期夸大因子或学习率可能过高.如果目标函数陷入一个坏的局部最小值递增,提高学习率有时会有帮助. |
scanpy.tsne | early_exaggeration | Float | 控制原始空间中的自然簇在嵌入空间中的紧密程度以及它们之间的间距.对于较大的值,嵌入空间中自然簇之间的空间将更大.同样,这个参数的选择不是很关键.如果初始优化过程中成本函数增加,则早期夸大因子或学习率可能过高. |
scanpy.tsne | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.qc | per_mt | Int | 细胞过滤线粒体表达的最大百分比 |
scanpy.qc | min_gene | Int | 一个细胞过滤所需的最少表达基因数 |
scanpy.qc | min_cell | Int | 一个基因过滤所需的最少表达细胞数 |
scanpy.qc | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.qc | genes | Int | 一个细胞过滤所需的最大表达基因数 |
scanpy.qc | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.pca | zero_center | Boolean | 如果为真,则从协方差矩阵计算标准PCA.如果为False,则省略中心零变量使用TruncatedSVD,这样可以有效地处理稀疏输入.传递None根据数据的稀疏性自动决定. |
scanpy.pca | use_highly_variable | Boolean | 是否只使用存储在.var['highly_variable']中高度可变基因.默认情况下,如果事先确定了它们,则使用它们. |
scanpy.pca | svd_solver | String | SVD的方法 |
scanpy.pca | n_comps | Int | 要计算的主成分数.默认值为50,或1-选定表达的最小尺寸. |
scanpy.pca | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.pca | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.normalize | target_sum | Float | 如果None,则在标准化之后,每个观察值单元格的总计数等于标准化前观察值单元格总计数的中位数. |
scanpy.normalize | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.normalize | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.neighbors | use_rep | String | 使用指定的表示法X'或.obsm的任何键有效.如果没有,则自动选择表示:对于.n_vars<50,则使用.X,否则使用“X_pca'.如果“X_pca'不存在,则使用默认参数进行计算. |
scanpy.neighbors | n_pcs | Int | 使用的PCs数量 |
scanpy.neighbors | n_neighbors | Int | 用于流形逼近的局部邻域的大小以相邻数据点的数目表示.值越大,流形的全局视图就越多,而值越小,保存的局部数据就越多.一般情况下,值应在2到100之间.如果knn为真,则为要搜索的最近邻数.如果knn为假,则高斯核宽度设置为n_邻居的距离. |
scanpy.neighbors | method | String | 使用具有自适应宽度的'umap'或者'gauss'来计算连接度.将“rapids'用于UMAP的rapids实现仅限实验性GPU.. |
scanpy.neighbors | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.neighbors | knn | Boolean | 如果为True,则使用硬阈值将邻居数限制为n个邻居,即考虑knn图.否则,使用高斯核将较低的权重分配给比n_邻居最近的邻居更远的邻居. |
scanpy.neighbors | key_added | String | 如果未指定,则邻居数据存储在.uns['neighbors'],距离和连接分别存储在.obsp['distances']和.obsp['connectivity']中.如果指定,则将邻居数据添加到.uns[key_added],距离存储在.obsp[key\u added+'''u distances']中,而connectivity则存储在.obsp[key\u added+'''u connectivities']中. |
scanpy.neighbors | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.marker | n_genes | Int | 出现在返回表中的基因数.默认为所有基因. |
scanpy.marker | method | String | 默认方法为“t-test',“t-test'高估每组的方差,“wilcoxon'使用wilcoxon秩和,“logreg'使用logistic回归. |
scanpy.marker | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.marker | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.louvain | use_weights | Boolean | 使用knn图中的权重 |
scanpy.louvain | resolution | Float | 对于默认风格“vtraag',您可以提供一个分辨率更高的分辨率意味着找到更多更小的集群,默认值为1.0. |
scanpy.louvain | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.louvain | flavor | String | 选择计算聚类的包的方法,可选值[‘vtraag’, ‘igraph’, ‘rapids’] |
scanpy.louvain | directed | Boolean | 将邻接矩阵解释为有向图? |
scanpy.louvain | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.leiden | use_weights | Boolean | 如果为True,则在计算中使用图中的边权重(更强调更强的边). |
scanpy.leiden | resolution | Float | 控制聚类粗糙度的参数值.值越大,簇越多.如果将分区类型重写为不接受解析参数的分区类型,则设置为无. |
scanpy.leiden | n_iterations | Float | leiden算法要执行多少次迭代.大于2的正值定义要执行的迭代总数,-1使算法运行,直到达到最佳聚类. |
scanpy.leiden | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.leiden | directed | Boolean | 是按有向图还是无向图. |
scanpy.leiden | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.hvg | subset | Boolean | 如果是True,则在高变异基因的位置上的子集,否则只表示高变异基因. |
scanpy.hvg | n_top_genes | Int | 保留高度可变基因的数量.如果flavor='seurat_v3',则必须输入. |
scanpy.hvg | min_mean | Float | 如果n_top_gene 不为None,则忽略平均值和归一化离散度的这个指和所有其他截止值.忽略if flavor='seurat_v3'. |
scanpy.hvg | min_disp | Float | 如果n_top_gene 不为None,则忽略平均值和归一化离散度的这个指和所有其他截止值.忽略if flavor='seurat_v3' |
scanpy.hvg | memory | String | 任务运行的内存数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围>为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy.hvg | max_value | Float | 缩放后剪辑截断到此值.如果没有,不截断 |
scanpy.hvg | max_mean | Float | 如果n_top_gene 不为None,则忽略平均值和归一化离散度的这个指和所有其他截止值.忽略if flavor='seurat_v3'. |
scanpy.hvg | max_disp | Float | 如果n_top_gene 不为None,则忽略平均值和归一化离散度的这个指和所有其他截止值.忽略if flavor='seurat_v3'. |
scanpy.hvg | flavor | String | ['seurat', 'cell_ranger', 'seurat_v3'];选择鉴别高度变异基因flavor.对于默认工作流程中基于离散度的方法,Seurat通过了截止点,而Cell Ranger传递的是n_top_基因. |
scanpy.hvg | cpu | String | 任务运行的CPU数量,注意1.取值范围为0.25核-32核,另外还可选48核和64,CPU必须为0.25核的整数倍;2.内存取值范围为1GB-512GB,且内存必须为1GB的整数倍3.CPU/内存配比值必须在1:2到1:8之间 |
scanpy | embed_method | String | 降维的方法 umap' or 'tsne' |
scanpy | cluster_method | String | 聚类的算法'leiden' or 'louvain' |
任务名称 | 变量名称 | 类型 | 描述 |
---|---|---|---|
scanpy | cluster | File | -- |
scanpy | fina_h5ad | File | -- |
scanpy | metadata | File | -- |