你不容错过的单细胞分析神器!TSCAN包,预测细胞时间序列,聚类细胞,简直好用到令人难以置信!






你不容错过的单细胞分析神器!TSCAN包,预测细胞时间序列,聚类细胞,简直好用到令人难以置信!

小果  生信果  2024-05-13 18:00:17

研究细胞的同学们注意啦!今天小果要探讨的是处理单细胞和批量RNA测序数据的超好用的R包——TSCAN包!在我们研究基因表达动态变化时,TSCAN能够提供强大的算法和功能,能够准确识别基因表达在时间上的变化模式,并将样本或细胞划分为不同的聚类簇,简直不要太好用!通过学习TSCAN包,我们可以深入理解细胞类型的演变和发展轨迹,揭示细胞在不同条件下的表达模式,并且TSCAN包还和其他单细胞RNA-seq数据分析工具兼容,为我们的研究提供了更广泛的视野和更深入的分析方法。这篇宝藏文章可是出自小果我这个生信高手之手哦,要是同学们有自己做不了的生信分析,欢迎联系我!!!
在本次学习中,我们将学习如何安装和使用TSCAN包,掌握其在单细胞RNA-seq数据分析中的关键功能。通过实际示例的演示,我们将了解如何构建伪时间细胞排序、提取差异表达基因等,这些技能将帮助我们更好地理解基因表达动态变化的过程。接下来就让小果带领大家一起迎接快速掌握TSCAN包的挑战吧!             
本次介绍的R包需要较多的硬件资源,在服务器可以更加流畅运行,同学们如果没有自己的服务器欢迎联系我们进行服务器租赁~



公众号后台回复“111”

领取本篇代码、基因集或示例数据等文件

文件编号:240510-1

需要租赁服务器的小伙伴可以扫码添加小果,此外小果还提供生信分析,思路设计,文献复现等,有需要的小伙伴欢迎来撩~

TSCAN包介绍
TSCAN(Time-series Clustering Analysis for Single-cell and bulk RNA-seq data)是一个专门用于单细胞和批量RNA-seq数据的时间序列聚类分析工具包。它通过强大的算法,能够准确识别基因表达在时间上的变化模式,并将样本或细胞划分为不同的聚类(簇)。该工具包还支持伪时间分析,有助于理解细胞类型的演变和发展轨迹。TSCAN具有灵活性和可扩展性,能够处理大规模数据,并与其他常用的单细胞RNA-seq数据分析工具兼容,为研究基因表达动态变化提供了强大的分析工具。    
TSCAN包安装
需要R语言版本为4.3,在控制台中输入以下命令:
if (!require("BiocManager", quietly = TRUE))    install.packages("BiocManager ")BiocManager::install("TSCAN") # 在BiocManager环境下安装TSCAN查看是否安装成功:packageVersion("TSCAN") # 查看TSCAN版本
显示为1.40.1版本,则表示已经安装了TSCAN包。
使用TSCAN包进行单细胞基因差异表达分析
在本文中,我们将使用BMDC细胞在LPS试剂处理前后6小时的单细胞RNA-seq数据来演示如何使用TSCAN包构建伪时间细胞排序,以识别和描述细胞基因表达的动态变化。
载入需要的包和数据:
library(TSCAN) # 载入TSCAN包data(lpsdata) # 载入lpsdata数据class(lpsdata) # 查看lpsdata数据数据类型dim(lpsdata) # 查看lpsdata矩阵的行列信息
输出结果如下:
可知lpsdata数据类型是一个矩阵,共16776行,131列,其中行为基因编号,列为不同处理方式的细胞样本。
procdata <- preprocess(lpsdata) # 对lpsdata数据进行预处理。preprocess函数可以用来处理数据,筛选掉在大多数细胞中不表达或者表达不具有差异性的基因。class(procdata) # 查看procdata数据数据类型dim(procdata) # 查看procdata矩阵的行列信息
结果如下:
可知,通过preprocess函数,我们筛选掉了16242个基因数据,只留下啦534个数据进行研究。
构建单细胞伪时间排序:
小果先来简单介绍一下什么是伪时间细胞排序吧,伪时间细胞排序(pseudotemporal cell ordering)是指通过单细胞RNA测序数据对细胞进行排序,使得排序后的细胞在某种假设的时间序列中具有逐渐变化的特征。这种排序通常用于研究细胞在发育过程或其他时间依赖性过程中的动态变化。在伪时间细胞排序中,每个细胞都被赋予一个所谓的“伪时间点”,表示其在所研究的生物过程中的相对位置。这种排序可以帮助揭示细胞类型之间的关系,以及它们在时间上的发展轨迹。
相信小果,构建单细胞伪时间排序,并根据伪时间序列提取差异表达基因,绝对是研究单细胞组学的你不容错过的重点内容。
          
我们首先使用exprmclust函数对数据进行维度约简,命令如下:    
lpsmclust <- exprmclust(procdata) # 使用exprmclust函数对数据进行维度约简接着使用plotmclust函数来对约简之后的数据进行可视化,命令如下:plotmclust(lpsmclust) # 对约简之后的数据进行可视化
显示结果如下:
其中,PCA为主成分分析 (Principal Component Analysis),是一种常用的线性降维技术,然后根据图像分布进行聚类,由图可知,基因分布主要可以聚集为三大类。
接下来我们可以使用TSCANorder函数来获得TSCAN 的伪时间排序,命令如下:    
lpsorder <- TSCANorder(lpsmclust) #使用TSCANorder函数来获得TSCAN 的伪时间排序lpsorder # 查看lpsorder结果
结果如下图所示:
根据伪时间序列提取差异表达基因:
我们可以使用 difftest 函数来检测在构建的伪时间顺序中差异表达的基因。该函数将比较拟合广义可加模型(gam)和拟合常数的拟合效果,如果广义可加模型的拟合显著优于常数拟合,那么该基因被认为是差异表达。命令如下:
diffval <- difftest(procdata,lpsorder) # 使用 difftest 函数来检测在构建的伪时间顺序中差异表达的基因diffval # 显示diffval结果
结果如下图:
由图可知difftest函数按照构建的伪时间顺序计算出了基因表达发生变化的p值和q值,接下来我们使用singlegeneplot函数来画出单个基因相对于伪时间顺序的表达值,命令如下:    
STAT2expr <- log2(lpsdata["STAT2",]+1) # 数据预处理singlegeneplot(STAT2expr, TSCANorder(lpsmclust,flip=TRUE,orderonly=FALSE)) # 绘制聚类后的单个基因表达值分布图
由图可知,图表显示了在伪时间顺序的不同阶段,基因表达的量的分布情况,在伪时间顺序的前半段有部分聚类编号为3的基因表达,表达量较小。在中段,大多数基因表达量较高,这些基因主要属于聚类编号为2的类别。而在后端,部分基因表达量较低,这些基因主要来自聚类编号为1的类别。该图直观展示了经过筛选以及聚类分析后的基因随伪时间顺序的基因表达量变化情况。
              
以上就是对于TSCAN包的全部介绍了,在本文中,我们详细介绍了如何使用TSCAN包进行单细胞RNA-seq数据的处理和分析,特别是通过伪时间细胞排序来揭示细胞基因表达的动态变化。通过TSCAN包提供的功能,我们能够对数据进行预处理、维度约简、可视化和差异表达分析,从而深入理解细胞在不同条件下的表达模式和发展轨迹。通过本文的学习,我们不仅了解了TSCAN包的基本使用方法,还掌握了单细胞RNA-seq数据分析的一般流程。这些技能不仅对于研究细胞发育和生物学过程具有重要意义,也为进一步探索细胞功能和疾病机制提供了强大的工具和方法。小果希望同学们继续学习和探索TSCAN包的更多功能和应用,不断提升自己在单细胞数据分析领域的能力,为生物信息学的进步做出更大的贡献。
          
同学们如果觉得自己写代码麻烦,可以体验一下我们的云生信小工具,只需输入数据,即可轻松生成所需图表。立即访问云生信
http://www.biocloudservice.com/home.html),开启便捷的生信之旅!

小果还提供思路设计、定制生信分析、文献思路复现;有需要的小伙伴欢迎直接扫码咨询小果,竭诚为您的科研助力!


定制生信分析

服务器租赁

扫码咨询小果



往期回顾

01

1024G存储的生信服务器,两人成团,1人免单!

02

单个数据库用腻了?多数据库“组合拳”带你打开免疫浸润新思路!

03

孟德尔随机化的准备工作,GWAS数据的网站下载方法

04

跟着小果学复现-手把手带你拿下IF=46.9Nature 级别的主成分分析(PCA)图!!