1、整理数据,第一列为基因列表,后面为不同时期表达量。

    2、

    1. #加载。
    2. library(Mfuzz)
    3. #设置工作路径,初始化环境。
    4. setwd('E:/R')
    5. getwd()
    6. rm(list=ls())
    7. #把表达量文件另存为制表符分隔的txt文件,放入设置的工作路径中,导入表达量数据。
    8. gene<-read.table('FPKM.txt',header=T,row.names=1,sep='\t')
    9. #构建对象。
    10. gene_fpkm<-data.matrix(gene)
    11. eset<-new('ExpressionSet',exprs=gene_fpkm)
    12. #去除超过25%数据缺失的基因。
    13. gene.r<-filter.NA(eset, thres=0.25)
    14. #用平均值填充缺失值。
    15. gene.f<-fill.NA(gene.r,mode='mean')
    16. #根据标准差去除样本间差异太小的基因。
    17. tmp<-filter.std(gene.f,min.std=0)
    18. #标准化。
    19. gene.s<-standardise(tmp)
    20. #聚类个数c。比如输入12。
    21. c<-12
    22. #计算最佳的m值。
    23. m<-mestimate(gene.s)
    24. #聚类。
    25. cl<-mfuzz(gene.s, c=c, m=m)
    26. #绘制折线图。
    27. mfuzz.plot(gene.s,cl,mfrow=c(3,4),new.window=FALSE)

    3、图片美化调整。

    1. #调整图片排列(三行四列布局)
    2. mfrow=c(3,4)
    3. #调整配色(详见另一篇笔记——RColorBrewer使用方法)
    4. library(RColorBrewer)#加载RColorBrewer调色板。
    5. col<-c('#1E88E5','#43A047','#FDD835','#FB8C00','#E53935','#90A4AE')#输入色值,并赋值给col
    6. mfuzz.plot(gene.s,cl,mfrow=c(3,4),col,new.window=FALSE)#重新绘图,根据图片调整色值顺序。

    4、输出相关信息。

    1. #查看每类基因数目。
    2. cl$size
    3. #查看每类基因ID。
    4. cl$cluster[cl$cluster==1]
    5. #输出基因ID,路径为当时设置的工作路径。
    6. write.table(cl$cluster,'output.txt',quote=F,row.names=T,col.names=F,sep='\t')

    5、备注

    1. #打开可视化设置帮助文档
    2. ?mfuzz.plot2