美文网首页
PCA分析作图

PCA分析作图

作者: RaoZC | 来源:发表于2020-05-20 11:32 被阅读0次

主成分分析,原理不讲了,直接上代码~

1. 数据读入
setwd("D:/....../PCA")
pca = read.table("FPKM.txt",header = T)
head(pca)
数据结构

数据的结构如上图。

2. PCA分析

首先是先进行PCA分析

pca1 = pca[,2:22]
pcadev=princomp(pca1,cor=T)
summary(pcadev,loadings = T)
comp1=pcadev$loadings[,1]
comp2=pcadev$loadings[,2]
comp3=pcadev$loadings[,3]

summary()可以直观地看到主成分分析结果,而loading的结果,则可用于作图,summary()结果如下:


summary()

Propotion of Variance就是我们要的主成分,Comp.1和Comp.2分别为第一和第二主成分,解释度分别为80.72%和10.34%。

3. 作图
3.1 简单的3d图

使用rgl包进行作图,rgl详细使用方式在另外一篇文章中说明

library(rgl)
plot3d(comp1,comp2,comp3,col=rainbow(14),size = 10,xlab="PC1",ylab="PC2",zlab="PC3")
rgl.spheres(comp1,comp2,comp3,r=0.03,col=rainbow(14))

可以得到如下3d图


3d图,可以自由旋转
3.2 ggplot2
使用ggplot2包进行作图,要先处理一下主成分分析结果,从loading结果中提取Comp的值,并按需加入区分的参数。 输入的数据结构

开始绘制ggplot散点图

library(ggplot2)
pp = read.table("Com1+Com2.txt",header = T)
pcap = ggplot(pp,aes(x=Comp1,y=Comp2,col=Groups,shape=Stages))+
  geom_point()+
  labs(x="PCA1(80.72%)",y="PCA2(10.34%)")+
  geom_rug()+
  theme_bw()
pcap
得到的草图保存为eps格式,在AI中处理一下,导出为300 dpi的tiff文件,便得到如下结果: PCA

相关文章

网友评论

      本文标题:PCA分析作图

      本文链接:https://www.haomeiwen.com/subject/sgqgohtx.html