GEO数据库单细胞测序数据怎么下载和分析才是正道很多刚做生信的小白或者临床医生转行做科研的朋友经常卡在这个坑里,明明想复用GEO上的公数据发文章,结果下下来的文件要么打不开,要么细胞数量对不上,甚至直接报错,导致前面的功夫全白费了,这篇就是直接给你讲清楚GEO数据库单细胞测序全流程里最容易出错的那些地方怎么避免。
说实话之前帮同事看数据的时候发现他下载了一个GSE开头的scRNA-seq数据集结果发现那是批量测序不是单细胞因为GEO里很多老数据或者描述不规范的条目容易混淆这一点,所以在开始任何操作前一定要先去GEO详情页看Platform信息以及确认是不是真的单细胞,如果平台是Illumina NovaSeq或者10x Genomics v2/v3那种才是正儿八经的单细胞数据别去碰那些SAGE或者RNA-seq batch的坑。
很多人觉得下载就是把文件拖下来就行其实不然GEO单细胞数据通常分好几种格式比如raw matrix、filtered feature barcodes matrix还有counts矩阵,如果你直接用R语言的Seurat或者Scanpy读原始的文件往往会报错因为编码格式或者分隔符不对,这时候最稳妥的办法是先查看README文档里推荐的导入方式,如果文档写得烂或者过时了就自己去比对列名通常第一列是gene或者cell barcode第二列及以后是各个样本或者各个细胞的表达量,记得要检查是不是转置过的矩阵不然细胞会变成几千几百万个基因数直接爆内存。
接着说质控这个环节真的是重灾区,我见过太多人直接用原始数据进下游分析最后聚类出来的细胞类型全是错的,GEO数据库单细胞测序数据的质控标准必须比自测数据更严一点因为公开数据往往混入了一些低质量测序的样本,比如线粒体基因比例超过15%甚至20%的细胞必须剔除另外nFeature(检测到的基因数)过低或者过高的细胞也要滤掉,还要特别注意是否混入了Doublets双峰细胞因为GEO数据如果是多实验合并下来的doublets比例往往比你想象的要多用DoubletFinder跑一遍绝对值得花时间别省这一步。
归一化和维度缩减这两个步骤看似简单但参数设置不对后续聚类全崩,对于GEO数据库单细胞测序来说LogNormalize还是SCTransform的选择取决于你数据的深度如果测序深度不够LogNormalize可能更稳但如果是10x v3高深度数据强烈建议用SCTransform来校正技术噪音,在降维选PC的时候别死板地选20个或者30个一定要看Elbow plot或者JackStraw图找到那个拐点再确定不然PCA做出来的图要么是团成一坨要么是散得太开,这里还有一个小坑就是如果数据包含多个批次GEO数据库单细胞测序经常是合并了不同病人或者不同时期的样本这时候如果不做批次整合Harmony或者BBKMR聚类图上会有明显的分离导致细胞类型注释完全错乱切记切记。
最后关于注释和差异表达,很多新手喜欢直接用自动注释工具Markushin或者CellPhoneDB然后就直接发文章了,但我强烈建议你结合自己研究疾病的已知marker基因去手动校正特别是T细胞亚群和单核细胞亚群自动注释经常分不清Th1/Th2/Th17或者Mo1/Mo2这些细分类型,如果你做的是疾病相关分析一定要把不同批次间的一致性检查清楚确保没有批次效应干扰你的DEG结果。
其实GEO数据库单细胞测序数据虽然免费但整理起来真的非常耗时如果你卡在某一步比如矩阵读取失败或者聚类分离不好别自己在那死磕有时候换个思路或者找专业生信团队帮你跑一下流程效率会高很多尤其是涉及到复杂统计建模和多组学整合的时候,我这边经常接到咨询都是卡在这些具体细节上如果你有具体的报错截图或者数据分析瓶颈不妨直接把文件结构发过来我们看看问题出在哪个环节通常半小时就能定位到问题所在。