转录组及可视化分析——PCA 分析

B站影视 电影资讯 2025-06-02 12:25 1

摘要:在进行正式的转录组分析之前,除了样本间的相关性分析,也可以通过主成分分析(Principal Component Analysis, PCA)进行组间和组内的样本分析,用来判别:相对于正常对照组,动物在接受模型刺激后的变化;以及相对于模型组,药物干预后的变化。

在进行正式的转录组分析之前,除了样本间的相关性分析,也可以通过主成分分析(Principal Component Analysis, PCA)进行组间和组内的样本分析,用来判别:相对于正常对照组,动物在接受模型刺激后的变化;以及相对于模型组,药物干预后的变化。具体而言,基于转录组测序数据的 PCA 分析能够进行 组间差异解析组内变异控制异常样本识别潜在生物学解释

数据的话我们采用的是送样测序公司反馈给我们的 gene_count 文件,格式如下:

gene_id: 基因 ID

gene_count: C1-T3 都是各个组的 gene count 数值

其他列一般我自己分析的话是不需要的。

我给大家提供了四种格式的数据,大家可以 下载到本地使用 或 直接读取在线数据,就可以案例分析了。

链接: https://gitee.com/escibiu/bioinformatics/tree/master/transcriptomics

比如 xlsx 的数据,想要获取文件的链接,直接点击进去后,右击 原始数据,复制链接 即可

在线连接就拿到了:https://gitee.com/escibiu/bioinformatics/raw/master/transcriptomics/gene_count.xlsx,直接read.xlsx读取即可

R: 4.5.0

RStudio: 2025.05.0

1.加载需要用的数据包

library(openxlsx) #读取数据library(tidyverse) #数据整理及绘图library(ggbiplot) #PCA绘图library(ggrepel) #排斥重叠的文本标签

2.读取测序原始文件

# 读取Control,Model,P,T四个组别gene_count

3.查看数据

view(head(gene_count))

4.进行主成分分析

# 对数据进行转置PCA_data %tview(head(PCA_data,9))

5.设置分组数据(由于在送样或者其他情况下,我们一般习惯使用组别缩写或其他命名格式,但在数据分析中,需要使用组别名称而不是样本名称,因此需要设置分组)

dfGroup %as.data.frame%>%mutate(Group = c(rep("Control",3),rep("Model",3),rep("Positive",3),rep("Treatment",3)))colnames(dfGroup)[1]

6.选出 PCA 数据中所有方差不为零的列

PCA_data

7.设置 scale=T,一个逻辑值,指示在进行分析之前是否应该将变量缩放到具有单位方差

PCA_result

8.进行 PCA 绘图

ggbiplot(PCA_result,point.size = 10, #点的大小var.axes=F, # 是否为变量画箭头obs.scale = 1, # 横纵比例 groups = dfGroup$Group, # 添加分组信息,为分组文件的第一列ellipse = TRUE, # 是否围绕分组画椭圆,如果数据太少,会显示Too few points to calculate an ellipsecircle = TRUE)+ scale_fill_manual(values = c('#d7191c','gray','#abd9e9','#2c7bb6'))+scale_color_manual(values = c('#d7191c','gray','#abd9e9','#2c7bb6'))+geom_label_repel(aes(label=dfGroup$Samples),size = 5,)+theme_bw+theme(text = element_text(size = 18,face = "bold"),legend.background = element_blank,aspect.ratio = 1)+labs(fill = "Group", color = "Group")ggsave("PCA.pdf",width = 8,height = 8)

9.好了 PCA 图就绘制好了,赶紧在自己电脑练习一下吧!

来源:Paper绘图

相关推荐