Principal component analysis (PCA) 分析
主成分分析(PCA)帮助我们归纳总结和可视化数据集中的信息,这些数据包含由多个相互关联的变量描述的个体 / 观察主成分分析。 可以将每个变量视为不同的维度。 但如果您的数据集中有3个以上的变量,那么很难在多维超空间可视化。 主成分分析是用来从一个多变量数据表中提取重要信息,并将这些信息表示为一组称为主成分的新变量。 这些新的变量相当于原始数据的线性组合。 主成分的个数小于或等于原始变量的个数。 给定数据集中的信息对应于它所包含的总变差。 主成分分析的目的是确定数据变化最大的方向(或主成分)。换句话说,主成分分析将多变量数据的维数降低为两个或三个主成分,这些主成分可以以图形化的方式显示,信息损失最小。转录组中,一般用来检验不同处理组样本间重复性的好坏。更多PCA原理及分析方法请点击文末的PCA分析资料,下面小编用自己的数据在R中进行PCA分析。
PCA可视化
- 数据展示
- 代码展示
******************************************************************************************************
#### RNA-seq样本PCA分析####
#加载的R包
install.packages(c("ggpubr","ggthemes","gmodels"))
library(ggpubr)
#加载差异基因表达矩阵
library(gmodels)
library(ggpubr)
library(ggplot2)
library(ggthemes)
data<-read.csv("C:/Users/Administrator/Desktop/I.csv",header = T,row.names = 1)
head(data)#每一列为一个样本,每一行为一个基因
#计算PCA
pca.info <- fast.prcomp(data)
??fast.prcomp()
#显示PCA计算结果
head(pca.info$rotation)
#计算Y1与Y28之间的差异
pca.data <- data.frame(sample = rownames(pca.info$rotation),Type = c(rep("1d",3),rep("28d",3)),pca.info$rotation)
#绘图
ggscatter(pca.data,x = "PC1",y = "PC2",color = "Type") + theme_base()
###其它图形修饰参数自己摸索吧,哈哈~
************************************************************************************************************************
- 结果图
从图片来看,第一天间样本重复性较好,28d的就不行了,都聚不到一块。
更多信息可见:PCA分析资料