教小高改bug

  博客园 :: 首页 :: 博问 :: 闪存 :: :: 联系 :: :: 管理 ::

0. 准备

setwd("D:/R/CHOL")
rm(list = ls())  
load(file = "step1output.Rdata")
load(file = "step2output.Rdata")

 1. 主成分分析图(Principal Component Analysis,PCA)

输入数据:exp(表达矩阵)和group_list(分组信息)

PCA代码来源:http://www.sthda.com/english/articles/31-principal-component-methods-in-r-practical-guide/112-pca-principal-component-analysis-essentials

dat=as.data.frame(t(exp))
library(FactoMineR)
library(factoextra)
dat.pca <- PCA(dat, graph = FALSE)
pca_plot <- fviz_pca_ind(dat.pca,
                         geom.ind = "point",
                         col.ind = group_list,
                         #palette = c("#00AFBB", "#E7B800"),
                         addEllipses = TRUE,
                         legend.title = "Groups"
)
pca_plot
ggsave(plot = pca_plot,filename = paste0(gse,"PCA.png"))
save(pca_plot,file = "pca_plot.Rdata")

2. 画主成分分析图需要加载这两个包。

3. 画主成分分析图需要加载这两个包。

6. 仅显示点(但不是“文本”)(show points only (nbut not "text"))。

7. 按分组信息赋予颜色(color by groups)。

8. 如需设置非默认颜色,将此行代码的“#”去掉并修改颜色(HEX,十六进制颜色),颜色个数需与分组个数相同。

9. 浓度椭圆(Concentration ellipses)。

10. 注释标题。

13. 保存PCA图(.png格式)。

14. 保存PCA对象 。


2. 热图

选取热图数据

cg=names(tail(sort(apply(exp,1,sd)),1000))
n=exp[cg,]

1. 取表达矩阵exp中标准差最大的1000个探针的名字。

2. 取表达矩阵exp中标准差最大的1000个探针。

绘制热图

annotation_col=data.frame(group=group_list)
rownames(annotation_col)=colnames(n)
library(pheatmap)
pheatmap(n,
         show_colnames =F,
         show_rownames = F,
         annotation_col = annotation_col,
         scale = "row")

1. 生成含有一列值的数据框,列名为“group”,值为分组信息(group_list)。

2. 该数据框的行名为表达矩阵exp中标准差最大的1000个探针的名字。

5. 不显示列名。

6. 不显示行名。

7. 按分组进行列注释。

8. 按行标度。

相关性热图

co = cor(exp)
pheatmap(co)
co = cor(n)
pheatmap(co)

1. 选择表达矩阵exp中所有探针

2. 所有探针的相关性热图

3. 选择表达矩阵exp中标准差最大的1000个探针

4. 表达矩阵exp中标准差最大的1000个探针的相关性热图


 关闭画板

dev.off()

 若运行代码后不出图也不报错,可能是画板被占用,运行此行代码即可。


 

posted on 2022-09-15 12:26  小高不高  阅读(865)  评论(0编辑  收藏  举报