前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >单细胞转录组降维聚类分群过滤基因和过滤细胞的区别

单细胞转录组降维聚类分群过滤基因和过滤细胞的区别

作者头像
生信技能树
发布2024-11-21 09:32:03
发布2024-11-21 09:32:03
12200
代码可运行
举报
文章被收录于专栏:生信技能树生信技能树
运行总次数:0
代码可运行

我们给了大家一个常规的可以批量导入全部的10x单细胞表达量矩阵文件夹的代码:

代码语言:javascript
代码运行次数:0
复制
# 参考:https://mp.weixin.qq.com/s/tw7lygmGDAbpzMTx57VvFw
dir='GSE163558_RAW'
samples=list.files( dir  )
#samples=samples[1:2]
sceList = lapply(samples,function(pro){ 
  # pro=samples[1] 
  print(pro)  
  tmp = Read10X(file.path(dir,pro ) ) 
  print(dim(tmp))
  if(length(tmp)==2){
    ct = tmp[[1]] 
  }else{ct = tmp}
  print(dim(ct))
  sce =CreateSeuratObject(counts =  ct ,
                          project =  gsub('GSM[0-9]*_','',pro)  ,
                          min.cells = 5,
                          min.features = 300 )
  return(sce)
}) 

里面有两个很重要的参数, min.cells = 5, 和 min.features = 300 ,它们都是为了过滤我们的单细胞表达量矩阵,但是前者是过滤基因,后者是过滤细胞。以下是这两个参数的具体意义:

  1. min.cells
    • 这个参数指定了一个基因需要在至少多少个细胞中表达(即检测到的表达量大于0)的最小细胞数。例如,如果设置 min.cells = 5,那么只有那些在至少5个细胞中表达的基因才会被保留在最终的表达矩阵中。这个过滤步骤有助于去除那些可能由于随机噪声或测序误差而在极少数细胞中被检测到的基因,这些基因不太可能对生物学解释有贡献。
  2. min.features
    • 这个参数指定了细胞需要表达的最小基因数。例如,如果设置 min.features = 300,那么只有表达超过300个基因的细胞才会被保留在分析中。这个过滤步骤有助于去除那些测序深度不足或质量较低的细胞,这些细胞可能无法提供足够的生物学信息,或者可能代表了技术或生物学上的异常情况。

使用这些过滤参数的目的是从原始数据中移除不可靠或不相关的信息,从而提高后续分析(如聚类、差异表达分析等)的准确性和可解释性。过滤后的数据集应该更加聚焦于生物学上有意义的变异,减少分析结果中的假阳性。在实际应用中,选择适当的过滤参数值需要考虑实验设计、测序深度、数据质量以及生物学问题。过滤参数的设置应该基于对数据的初步探索和理解,以及可能的领域知识。过滤过程应该谨慎进行,以确保不会无意中移除重要的生物学信号。

假如是比较早期的10x技术的单细胞转录组,如果你想从表达量矩阵里面看看中性粒细胞,它的整体文库就偏小,甚至可以修改 min.features = 300 成为 min.features = 200,如果是比较成熟的最近的10x技术的单细胞转录组,你也可以放宽这个阈值啦!

更多的细胞过滤参数

上面的min.features = 300 是规定了细胞的下限,它就是计算nFeature_RNA值,如果这个值过低说明细胞质量肯定是不行,但是过高也不是好事,因为有可能是双细胞。但是如果是处于细胞增殖状态的细胞或者恶性的肿瘤细胞,它的nFeature_RNA值本来就会很高。所以我们很少会设置nFeature_RNA值的上限。类似的3个常见的过滤参数及其意义:

  1. nFeature_RNA
    • 这个参数代表每个细胞中检测到的基因特征(如基因或转录本)的数量。过滤掉低的nFeature_RNA值可以帮助去除那些测序深度不够或背景噪声较高的细胞。
  2. nCount_RNA
    • 这个参数表示细胞中所有基因的测序读段总数。它是一个衡量每个细胞测序数据总量的指标。去除nCount_RNA过低的细胞可以排除那些可能由于技术原因导致数据不足的细胞。
  3. percent_mito
    • 这个参数代表线粒体基因表达占总基因表达的比例。高比例的线粒体基因表达可能指示细胞应激或损伤。通过设置过滤阈值,可以去除可能不健康或死亡的细胞。

其中线粒体基因表达占总基因表达的比例是可以扩充到核糖体基因占比,红细胞基因占比等等。

比如文献题目为“Revealing the transcriptional heterogeneity of organ-specific metastasis in human gastric cancer using single-cell RNA Sequencing”。通讯作者是浙江大学的范骁辉教授,于2022年发表在Clin Transl Med杂志(IF=10.6)。可以看到文章的过滤参数是:

文章的过滤参数

就需要使用下面的代码:

代码语言:javascript
代码运行次数:0
复制
tmp=subset(sce.all.filt,subset = percent_mito < 20 &
            #nCount_RNA <10000 &
              nFeature_RNA <5000 &
             nFeature_RNA>200)

很简单的可以看出来每个阈值都是为了过滤细胞哦:

  • percent_mito < 20:过滤掉线粒体基因表达占比超过20%的细胞,这有助于去除可能由于细胞应激或损伤而异常表达线粒体基因的细胞。
  • nFeature_RNA < 5000:过滤掉表达特征数超过5000的细胞。这可能是为了去除高表达细胞,它们可能代表了技术异常或生物学上的异常状态,如细胞周期的某些阶段。
  • nFeature_RNA > 200:过滤掉表达特征数少于200的细胞,这有助于去除测序深度不足或背景噪声较高的细胞。

请注意,这些阈值的设定需要根据具体的数据集和实验目的来确定。研究人员可能需要通过探索性数据分析(EDA)来评估数据的分布,并根据数据的特定特征来调整过滤参数。此外,过滤决策可能需要基于领域知识和实验设计进行调整。

什么时候过滤基因呢

其实过滤基因的操作就是单细胞转录组标准流程里面的降维聚类分群环节的降维啦,

过滤基因(Filtering Genes)

  • 根据特定的标准(如表达水平、检测到的细胞数等)去除那些可能不可靠或生物学意义不大的基因。
  • 主要是设置:min.cells = 5
  • 这个参数指定了一个基因需要在至少5个细胞中被检测到(即在这些细胞中表达量大于0)。这有助于过滤掉只在极少数细胞中表达的基因,这些基因可能由于随机噪声或技术变异而出现。

挑选高变基因(Highly Variable Genes, HVGs)

  • 高变基因是指在细胞间表达差异较大的基因。这些基因在单细胞数据集中可能特别有信息量,因为它们可能与细胞状态、功能或身份有关。通常选择一定数量的高变基因进行后续分析,比如2000个。

降维(Dimensionality Reduction)

  • 降维技术用于减少数据集中的变量数量,同时尽可能保留数据的重要结构和变异。在单细胞转录组分析中,常用的降维方法包括主成分分析(PCA)和t-分布随机邻域嵌入(t-SNE)。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-08-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 更多的细胞过滤参数
  • 什么时候过滤基因呢
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档