分享

pca是热图的另一种表现形式

 微笑如酒 2019-02-15

   大神一句话,菜鸟跑半年。我不是大神,但我可以缩短你走弯路的半年~

   就像歌儿唱的那样,如果你不知道该往哪儿走,就留在这学点生信好不好~

   这里有豆豆和花花的学习历程,从新手到进阶,生信路上有你有我!

大年初三,加油油。

pca走起。

rm(list = ls())
if(!require(FactoMineR))install.packages('FactoMineR')
if(!require(factoextra))install.packages('factoextra')
library('FactoMineR')
library('factoextra')

选iris来做pca分析示例,是因为他的分组间有差异,有研究意义
去掉最后一列(分组信息)

dat <>
table(iris$Species)
## 
##     setosa versicolor  virginica 
##         50         50         50
pdata=data.frame(Species=iris$Species)
rownames(pdata)=rownames(dat)

看下热图

pheatmap::pheatmap(dat)
pca <>FALSE)
eig.val <>#特征值/方差/累计

##       eigenvalue variance.percent cumulative.variance.percent
## Dim.1 2.91849782       72.9624454                    72.96245
## Dim.2 0.91403047       22.8507618                    95.81321
## Dim.3 0.14675688        3.6689219                    99.48213
## Dim.4 0.02071484        0.5178709                   100.00000

图1:碎石图:选择要分析的主成分(一般是前两个)

fviz_eig(pca, addlabels = TRUE, ylim = c(0100))

图2:样本聚类,这是最重要的一张图。

fviz_pca_ind(pca, label='none', habillage=iris$Species,
             addEllipses=TRUE, ellipse.level=0.95, palette = 'Dark2')
# Read more: http://www./english/wiki/ggplot2-colors

图3:变量聚类

fviz_pca_var(pca, col.var = 'contrib',
             gradient.cols = c('white''blue''red'),
             ggtheme = theme_minimal())
# 这个颜色是根据变量的贡献值赋值的

图4:结合变量和观测值,变量太多时不适用

fviz_pca_biplot(pca, label = 'var', habillage=iris$Species,
                addEllipses=TRUE, ellipse.level=0.95,
                ggtheme = theme_minimal())

图5:看各原始变量主成分的贡献率

fviz_contrib(pca, choice = 'var', axes = 1#只看对PC1
fviz_contrib(pca, choice = 'var', axes = 2#只看对PC2
fviz_contrib(pca, choice = 'var', axes = 1:2#综合看PC1+PC2
#变量数多时加参数:top = n,表示前n

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多