您现在的位置是:首页 > 编程 > 

多分组的PCA图和top基因热图

2025-07-27 21:27:00
多分组的PCA图和top基因热图 多分组的PCA图和top基因热图在转录组和蛋白组的差异分析中,我们常常在质控阶段需要做一下样本的PCA图和标准差top 基因的表达,来评价组内差异和组间差异。以前主要做的二分组的比较,要想把多个分组的信息放在一张PCA图或者热图上,只需修改下Group值就行。如存在一下蛋白组的测序数据,主要有四个组代码语言:r复制> colnames(exp) [1] &

多分组的PCA图和top基因热图

多分组的PCA图和top基因热图

在转录组和蛋白组的差异分析中,我们常常在质控阶段需要做一下样本的PCA图和标准差top 基因的表达,来评价组内差异和组间差异。以前主要做的二分组的比较,要想把多个分组的信息放在一张PCA图或者热图上,只需修改下Group值就行。

如存在一下蛋白组的测序数据,主要有四个组

代码语言:r复制
> colnames(exp)
 [1] "LFQ.intensity.ChM-FD1" "LFQ.intensity.ChM-FD2" "LFQ.intensity.ChM-FD"
 [4] "LFQ.intensity.ChM-L1"  "LFQ.intensity.ChM-L2"  "LFQ.intensity.ChM-L" 
 [7] "LFQ.intensity.HM-FD1"  "LFQ.intensity.HM-FD2"  "LFQ.intensity.HM-FD" 
[10] "LFQ.intensity.HM-L1"   "LFQ.intensity.HM-L2"   "LFQ.intensity.HM-L" 

全部代码

代码语言:r复制
rm(list = ls())#清空当前的工作环境
opti(stringsAsFactors = F)#不以因子变量读取
opti(scipen = 20)#不以科学计数法显示

load("step1_input.Rdata")
exp <- exp8
colnames(exp)


# 1.PCA 图----
Group <- sub("\\d+$", "", sub(".*\\.", "", colnames(exp)))
Group = factor(Group,levels = c("ChM-FD","ChM-L","HM-FD","HM-L"))
#print(colnames_clean)
dat=as.data.frame(t(exp))
library(FactoMineR)
library(factoextra) 
dat.pca <- PCA(dat, graph = FALSE)
p1 <- fviz_pca_ind(dat.pca,
             geom.ind = "point", # show points only (nbut not "text")
             col.ind = Group, # color by groups
             palette = c('#E64A5','#4DBBD4' ,'#01A187'  ,'#6BD66B'),
             addEllipses = TRUE, # Concentration ellipses
              = "Groups"
)
ggsave("figure/PCA.pdf",plot = p1,width = 5, height = 5, dpi = 00)
#如果少于4个点就不会画出圈,是正常的。因为圈是置信区间,样本太少无法计算,不是必须的。
#  1000 sd 热图---- 
g = names(tail(sort(apply(exp,1,sd)),200)) #day7-apply的思考题
n = exp[g,]
library(pheatmap)
annotation_col = data.frame( = colnames(n),
                            Group = Group)
pdf("figure/top200_heatmap.pdf", width = 8, height = 8)
pheatmap(n,
         show_colnames =T,
         show_rownames = F,
         annotation_col=annotation_col,
         scale = "row", #按行标准化,只保留行内差别,不保留行间差别,会把数据范围缩放到大概-5~5之间
         breaks = seq(-,, = 100) #设置带分布范围为-~之间,超出此范围的数字显示极限颜
) 
()

主要不同在Group上,正则表达式解释

sub(".\*\\.", "", colnames(exp))

  • .*\\.:匹配最后一个点号之前的所有内容。
  • 替换为空,保留最后一个点号后的内容。

sub("\\d+$", "", ...)

  • \\d+$:匹配末尾的所有数字。
  • 替换为空,去除末尾的数字。

P1

P2

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1200568.html

相关标签:无
上传时间: 2025-07-23 19:20:17
留言与评论(共有 20 条评论)
本站网友 人民币澳元汇率
6分钟前 发表
"HM-FD"
本站网友 quxiu
7分钟前 发表
geom.ind = "point"
本站网友 想哭病毒
12分钟前 发表
"HM-L")) #print(colnames_clean) dat=as.data.frame(t(exp)) library(FactoMineR) library(factoextra) dat.pca <- PCA(dat
本站网友 卢凯悦
30分钟前 发表
不是必须的
本站网友 港口租房
23分钟前 发表
# color by groups palette = c('#E64A5'
本站网友 薄荷叶泡茶
18分钟前 发表
我们常常在质控阶段需要做一下样本的PCA图和标准差top 基因的表达
本站网友 腾讯互娱
23分钟前 发表
""
本站网友 平房出租
17分钟前 发表
超出此范围的数字显示极限颜 ) ()主要不同在Group上
本站网友 国家药监局数据库
12分钟前 发表
Group = Group) pdf("figure/top200_heatmap.pdf"
本站网友 crh380
3分钟前 发表
200)) #day7-apply的思考题 n = exp[g
本站网友 宁波购物
17分钟前 发表
""
本站网友 主语城
1分钟前 发表
只保留行内差别
本站网友 pcb软件
22分钟前 发表
1
本站网友 editplus注册码
15分钟前 发表
""
本站网友 潮红
4分钟前 发表
""
本站网友 百度老总李彦宏
20分钟前 发表
levels = c("ChM-FD"
本站网友 山西太原儿童医院
11分钟前 发表
sub(".*\\."
本站网友 金融相关比率
27分钟前 发表
以前主要做的二分组的比较
本站网友 龙飞虎
11分钟前 发表
只需修改下Group值就行