You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于基因表达筛选SCE中CD4+T细胞失败的解决方法

解决CD4+T细胞筛选后tSNE空白的问题

先排查代码基础错误

  • 你代码里混用了sce和sce2两个对象,必须确保索引的是同一个SCE对象,修正后示例:
    sce.cd4 <- sce2[, which(assay(sce2)['Cd4', ] > 2000)]
    
  • 核对Cd4基因名是否准确:不同参考基因组的注释中,基因名可能是大写的CD4,先运行rownames(sce2)查看所有基因名,确认目标基因的正确写法。

调整基因表达阈值的筛选逻辑

直接设置2000的count阈值过于严格,多数CD4+T细胞的CD4表达量很难达到这个数值(尤其是assay(sce2)调用的是原始counts时)。可以按以下步骤调整:

  1. 先查看CD4基因在全细胞中的表达分布:
    hist(assay(sce2)['CD4', ], breaks = 50)
    
    根据分布调整阈值,比如改成**大于0(检测到表达)**或更低的数值(如50、100);如果用的是归一化后的表达矩阵(如log转换后),阈值对应改成1或2。

更可靠的方法:基于细胞类型注释筛选

按照OSCA的标准流程,你应该已经完成了细胞聚类与类型注释(比如用SingleR或手动标记基因注释),直接用注释结果筛选更准确:

  1. 先确认细胞类型注释存储在colData中,查看注释列名:
    colnames(colData(sce2))
    
    假设注释列名为cell_type,其中包含"CD4+ T cell"这类标签。
  2. 直接筛选目标细胞:
    sce.cd4 <- sce2[, colData(sce2)$cell_type == "CD4+ T cell"]
    
    若注释包含多种CD4亚群,可使用模糊匹配:
    sce.cd4 <- sce2[, grepl("CD4", colData(sce2)$cell_type)]
    

验证筛选结果

筛选后先检查是否有细胞保留:

ncol(sce.cd4)

若结果大于0,再绘制tSNE图;若仍为0,说明筛选条件过严或注释存在错误,需重新调整。

内容的提问来源于stack exchange,提问作者Megan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 13:25:06