美文网首页
【Seurat 官方教程】流程拆解 (一): 预处理(过滤细胞和

【Seurat 官方教程】流程拆解 (一): 预处理(过滤细胞和

作者: 小霖123 | 来源:发表于2022-09-02 21:06 被阅读0次

    创建 Seurat 对象

    library(dplyr)
    library(Seurat)
    library(patchwork)
    
    # 加载 PBMC dataset
    pbmc.data <- Read10X(data.dir = "Data/filtered_gene_bc_matrices/hg19/")
    # 初始化 Seurat object with the raw (non-normalized data).
    pbmc <- CreateSeuratObject(counts = pbmc.data, project = "pbmc3k", min.cells = 3, min.features = 200)
    pbmc
    #An object of class Seurat 
    #13714 features across 2700 samples within 1 assay 
    #Active assay: RNA (13714 features, 0 variable features)
    

    查看 Seurat 对象

    # 查看三个基因在前30个细胞中的数据
    
    pbmc.data[c("CD3D", "TCL1A", "MS4A1"), 1:30]
    ## 3 x 30 sparse Matrix of class "dgCMatrix"
    ##        [[ suppressing 30 column names ‘AAACATACAACCAC-1’, ‘AAACATTGAGCTAC-1’, ‘AAACATTGATCAGC-1’ ... ]]                                                            
    ## CD3D  4 . 10 . . 1 2 3 1 . . 2 7 1 . . 1 3 . 2  3 . . . . . 3 4 1 5
    ## TCL1A . .  . . . . . . 1 . . . . . . . . . . .  . 1 . . . . . . . .
    ## MS4A1 . 6  . . . . . . 1 1 1 . . . . . . . . . 36 1 2 . . 2 . . . .
    

    标准预处理工作流程

    These represent the selection and filtration of cells based on QC metrics, data normalization and scaling, and the detection of highly variable features.

    质量控制和标准化

    1. 标记线粒体基因

    将“MT-”开头的基于当作线粒体基因,并计算百分比:

    pbmc[["percent.mt"]] <- PercentageFeatureSet(pbmc, pattern = "^MT-")
    head(pbmc@meta.data, 5)
    ##                  orig.ident nCount_RNA nFeature_RNA percent.mt
    ## AAACATACAACCAC-1     pbmc3k       2419          779  3.0177759
    ## AAACATTGAGCTAC-1     pbmc3k       4903         1352  3.7935958
    ## AAACATTGATCAGC-1     pbmc3k       3147         1129  0.8897363
    ## AAACCGTGCTTCCG-1     pbmc3k       2639          960  1.7430845
    ## AAACCGTGTATGCG-1     pbmc3k        980          521  1.2244898
    

    2. 过滤数据

    可视化 QC 指标,并使用它们来过滤细胞

    VlnPlot(pbmc, features = c("nFeature_RNA", "nCount_RNA", "percent.mt"), ncol = 3)
    
    plot1 <- FeatureScatter(pbmc, feature1 = "nCount_RNA", feature2 = "percent.mt")
    plot2 <- FeatureScatter(pbmc, feature1 = "nCount_RNA", feature2 = "nFeature_RNA")
    plot1 + plot2
    

    观察图片,选择一个过滤标准,把握不准的话,也可以使用下面标准过滤试试:
    如果从上一步生成的图中看到有很多细胞偏离正常范围,也可以根据图来定范围

    • 保留 nFeature_RNA大于200、小于2500的细胞
    • 保留 percent.mt 小于 5 的细胞
    # 这一步是过滤步骤
    pbmc <- subset(pbmc, subset = nFeature_RNA > 200 & nFeature_RNA < 2500 & percent.mt < 5)
    
    # 可以用上面的代码画图检查
    

    3.标准化

    我们使用一个全局缩放标准化方法“ LogNormalize”,该方法对基因 的表达以总表达量来标准化,将其乘以一个比例因子(默认为10,000) ,并对结果进行 log-transforms。

    • 经过标准化了的表达值存储在 pbmc[[“ RNA”]]@data 中;
    • 原始的 count 数据存储在 pbmc[[“ RNA”]]@count 中,NormalizeData函数利用这里的数据进行标准化
    • 因此不用担心重复运行 NormalizeData 函数会导致重复标准化的问题
    pbmc <- NormalizeData(pbmc, normalization.method = "LogNormalize", scale.factor = 10000)
    # 上面的参数都是默认的,等同于下面:
    # pbmc <- NormalizeData(pbmc)
    

    相关文章

      网友评论

          本文标题:【Seurat 官方教程】流程拆解 (一): 预处理(过滤细胞和

          本文链接:https://www.haomeiwen.com/subject/nneynrtx.html