首页 > 编程语言 >单细胞测序最好的教程(九): 细胞类型自动注释|发表在Science的注释算法

单细胞测序最好的教程(九): 细胞类型自动注释|发表在Science的注释算法

时间:2024-06-20 14:35:11浏览次数:24  
标签:Downloading Science 31 测序 注释 model adata pkl

作者按

本章节主要讲解了基于大模型的自动注释方法,包括CellTypist(发表在Science)和MetaTiME(发表在Nature communication),一个通用,一个泛癌专用。本教程首发于单细胞最好的中文教程,未经授权许可,禁止转载。

全文字数|预计阅读时间: 3000|3min

——Starlitnightly(星夜)

1. 背景

我们在3-3中介绍了基于marker的自动注释方法SCSA,在本章中,我们将介绍基于深度学习模型的自动注释方法CellTypist。该算法发表在Science,算是唯一一篇发表在正刊的单细胞注释算法。与别的自动注释算法不同,CellTypist可以自定义高精度和低精度,也就是说,CellTypist可以直接注释出细胞的亚群,在高精度下。此外,对于不认识的细胞类型,其会选择性注释,不会瞎注释,这与SCSA是相同的。

我们还介绍了一种关于癌症的细胞类型的自动注释算法Metatime,这是基于23种泛癌百万单细胞图谱所构建出来的自动注释模型

import omicverse as ov
print(f'omicverse version: {ov.__version__}')
import scanpy as sc
print(f'scanpy version: {sc.__version__}')
ov.ov_plot_set()

import celltypist
print(f'celltypist version: {celltypist.__version__}')
from celltypist import models

omicverse version: 1.5.1
scanpy version: 1.9.1
celltypist version: 1.6.0

2. 加载数据

我们还是使用前面用到的已经手动注释好的单细胞测序数据

adata = ov.utils.read('data/s4d8_manual_annotation.h5ad')

由于Celltypist要求使用的归一化值为10,000,而omicverse自带预处理的归一化值为500,000。所以我们提取原始counts进行还原,然后重新归一化

adata=adata.raw.to_adata()
ov.utils.retrieve_layers(adata,layers='counts')
print('raw count adata:',adata.X.max())

......The X of adata have been stored in raw
......The layers counts of adata have been retreved
raw count adata: 889.0

adata=ov.pp.preprocess(adata,mode='shiftlog|pearson',n_HVGs=2000,target_sum=1e4)

Begin robust gene identification
After filtration, 20171/20171 genes are kept. Among 20171 genes, 20171 genes are robust.
End of robust gene identification.
Begin size normalization: shiftlog and HVGs selection pearson
normalizing counts per cell The following highly-expressed genes are not considered during normalization factor computation:
[]
    finished (0:00:00)
WARNING: adata.X seems to be already log-transformed.
extracting highly variable genes
--> added
    'highly_variable', boolean vector (adata.var)
    'highly_variable_rank', float vector (adata.var)
    'highly_variable_nbatches', int vector (adata.var)
    'highly_variable_intersection', boolean vector (adata.var)
    'means', float vector (adata.var)
    'variances', float vector (adata.var)
    'residual_variances', float vector (adata.var)
End of size normalization: shiftlog and HVGs selection pearson

ov.utils.embedding(adata,
                basis='X_mde',
                color=[ "major_celltype"],
                title=['Cell type'],
                palette=ov.palette()[11:],
                show=False,frameon='small',)

骨髓细胞类型

3. CellTypist模型加载

我们首先需要下载已经训练好的模型

# Enabling `force_update = True` will overwrite existing (old) models.
models.download_models(force_update = True)

标签:Downloading,Science,31,测序,注释,model,adata,pkl
From: https://www.cnblogs.com/starlitnightly/p/18258593

相关文章

  • 单细胞测序最好的教程(八): 细胞类型自动注释-1|基于marker的自动注释
    作者按本章节主要讲解了基于marker的自动注释方法,一般来说,我会先自动注释,再手动去确认marker,这是因为,对于一个陌生的组织,我对marker是不了解的,自动注释可以帮助我快速熟悉细胞类型。本教程首发于单细胞最好的中文教程,未经授权许可,禁止转载。全文字数|预计阅读时间:5000|5min......
  • 单细胞测序最好的教程(七): 数据整合与批次效应校正
    作者按本教程将是本系列教程中比较有趣的一章,对于大型的单细胞测序项目来说,数据整合也是不可或缺的一个步骤。本教程首发于单细胞最好的中文教程,未经授权许可,禁止转载。全文字数|预计阅读时间:5000|5min——Starlitnightly区别于我们以往所学的数据整合,在单细胞测序领域,数......
  • 单细胞测序最好的教程(十二):你真的做对了细胞比例分析吗?
    作者按本章节主要讲解了单细胞数据的细胞组成(比例)的分析方法,讲解了为什么直接分析比例不行的原因与例子,并介绍了“有标签”,“有标签有层次”,“无标签”三个维度的细胞组成分析方法。本教程首发于单细胞最好的中文教程,未经授权许可,禁止转载。全文字数|预计阅读时间:5000|10min......
  • 单细胞测序最好的教程(十一):差异表达基因分析
    作者按本章节主要讲解了单细胞数据的差异表达基因分析方法,详细对比了ttest与DEseq2在所有细胞进行差异表达分析的异同,以及为什么要使用元细胞分析的原因。本教程首发于单细胞最好的中文教程,未经授权许可,禁止转载。全文字数|预计阅读时间:3000|5min——Starlitnightly(星夜)1.......
  • 单细胞测序最好的教程(十):细胞类型注释迁移|万能的Transformer
    作者按本章节主要讲解了基于transformer的迁移注释方法TOSICA,该算法在迁移注释上达到了SOTA的水平,在注释这么卷的赛道愣是杀出了一条血路。本教程首发于单细胞最好的中文教程,未经授权许可,禁止转载。全文字数|预计阅读时间:3000|3min——Starlitnightly(星夜)1.背景迁移注释......
  • 单细胞测序最好的教程(十四)测序原始数据公开至NCBI数据库
    作者按国内对于单细胞测序相关的中文教程确实不够全面,当然NCBI官网给的上传教程也比较详细了,所以变成了会者不难。本教程你现在可能用不上,但是你如果做单细胞测序,那么未来你一定会用上,建议收藏。在这里,我们将演示如何将测序文件完整上传到NCBI上。本教程首发于单细胞最好的中文......
  • 单细胞测序最好的教程(十六):关于RNA速率你想知道的都在这
    作者按本章节详细讲解了基于RNA速率的三种拟时序模型,包括稳态模型,EM模型和深度学习模型,并对比了不同模型的适用场景与计算特点。本教程首发于单细胞最好的中文教程,未经授权许可,禁止转载。全文字数|预计阅读时间:5000|10min——Starlitnightly(星夜)5.2RNA速率1.背景单细......
  • 【楔子】单细胞测序-最佳的分析Pipeline
    作者:starlitnightly日期:2023.07.14!!!note楔子从事单细胞分析也有一段时间了,国内大部分中文教程都是使用R语言进行分析,使用Python的还比较少,或者是直译scanpy的教程,不过scanpy可能已经比较旧了。在这里,我们参考了Singlecellbestpractice,希望能给国内的从业者带来一个完......
  • python函数声明(参数/返回值注释)和三个双引号用法
     1#python的"""三个双引号两种用法:(1)多行注释(2)定义多行字符串2deff1(ham:42,eggs:int='spam')->"Nothingtoseehere":3print("函数注释",f1.__annotations__)#函数注释{'ham':42,'eggs':<cl......
  • Net6 EFCore 基于MSSQL & T4 自动生成字段注释
    文件模板代码<#@templatelanguage="C#"#><#@outputextension=".cs"#><#@assemblyname="System.Core"#><#@importnamespace="System.IO"#><#@importnamespace="System.Linq"#>......