跟着Cell学作图 | 6.时间序列分析(Mfuzz包)

简介: 这篇2020年发表在cell上关于新冠的组学文章里面有大量的生信内容。今天带大家复现其中的一个Supplemental Figure:时间序列分析图。

时间序列分析


在研究基因表达谱或者蛋白表达谱时,经常会涉及到对时间序列的分析。例如,不同的基因或蛋白表达水平随时间表现出怎样的动力学特征,怎样挖掘潜在的时间特征?Mfuzz是用来进行不同时间点转录组数据表达模式聚类分析的R包。它能够识别表达谱的潜在时间序列模式,并将相似模式的基因聚类,以帮助我们了解基因的动态模式和它们功能的联系。本图中1,2,3,4,分别表示健康、非新冠肺炎、非重度新冠肺炎、重度新冠肺炎。


数据格式


image.png

210421_2

注:示例数据仅作展示用,无实际意义!


绘制


#------
title: "Mfuzz"
author: "MZBJ"
date: "2020/4/25"
#-----
setwd("F:/~/mzbj/cell/20210426")
df <- read.csv(file = "df_umap.csv")
df1 <- df[,-1]
#分组求均值
#aggregate用法上一篇原创推文已经介绍过了,不熟悉的可以去回顾一下
df2<-aggregate(df1[,colnames(df1)[2:ncol(df1)]],by=list(df1$label),mean,na.rm= TRUE)
#把第一列设为行名
row.names(df2)<-df6[,1]
df3<-data.frame(t(df2[,-1]))
#第一次使用要下载
BiocManager::install("Mfuzz")
library("Mfuzz")
#构建对象
df3a<-as.matrix(df3)
df3Ex<- ExpressionSet(assayData = df3a)
#排除了超过25%的测量缺失的基因
df3F <- filter.NA(df3Ex,thres = 0.25)
#用相应基因的平均值表达值替换剩余的缺失值
df3F <- fill.NA(df3F,mode = 'mean')
#标准化
df3F <- standardise(df3F)
#聚类
set.seed(2021)
#手动定义聚类个数 c
cl <- mfuzz(df3F,c=8,m=1.25)
#作图
pdf("mfuzz.pdf")
mfuzz.plot2(df3F, cl=cl,mfrow=c(4,4),centre=TRUE,x11=F,centre.lwd=0.2)
dev.off()
#批量导出每个聚类所包含的基因
dir.create(path="mfuzz",recursive = TRUE)
for(i in 1:8){
  potname<-names(cl$cluster[unname(cl$cluster)==i])
  write.csv(cl[[4]][potname,i],paste0("mfuzz","/mfuzz_",i,".csv"))
}

出图:


image.png


20210425_2

一模一样4个字我说累了哈哈哈~


相关文章
|
存储 测试技术
模拟实现链式二叉树及其结构学习——【数据结构】
模拟实现链式二叉树及其结构学习——【数据结构】
195 0
|
数据可视化 数据库
scRNA分析|使用CellChat完成细胞通讯分析-简单且可视化出众,代码自取
scRNA分析|使用CellChat完成细胞通讯分析-简单且可视化出众,代码自取
3065 1
|
数据可视化
单细胞转录组|scATAC-seq 数据整合
单细胞转录组|scATAC-seq 数据整合
|
存储 NoSQL Ubuntu
在Ubuntu 16.04上安装和配置Redis的方法
在Ubuntu 16.04上安装和配置Redis的方法
391 0
|
JSON 人工智能 算法
Golang 搭建 WebSocket 应用(四) - jwt 认证
Golang 搭建 WebSocket 应用(四) - jwt 认证
250 0
|
存储 Go
速绘丨GO富集气泡图绘制方法,利用R语言ggplot2包快速绘制,完整脚本可重复绘图
速绘丨GO富集气泡图绘制方法,利用R语言ggplot2包快速绘制,完整脚本可重复绘图
|
Java Python Windows
Python pip 源设置成国内源,阿里云源,清华大学源,最方便的方式,都在这里了
Python pip 源设置成国内源,阿里云源,清华大学源,最方便的方式,都在这里了
85379 1
|
数据可视化 数据挖掘 图计算
使用ComplexHeatmap绘制复杂热图|Note2:单个热图(万字超详细教程)(下)
使用ComplexHeatmap绘制复杂热图|Note2:单个热图(万字超详细教程)(下)
2308 0
使用ComplexHeatmap绘制复杂热图|Note2:单个热图(万字超详细教程)(下)
|
数据可视化 Go
clusterProfiler|GSEA富集分析及可视化
clusterProfiler|GSEA富集分析及可视化
1592 0
|
数据可视化 数据挖掘 Linux
科研绘图丨使用R语言Pheatmap包快速绘制基因表达量热图的方法,支持聚类和配色自定义修改
科研绘图丨使用R语言Pheatmap包快速绘制基因表达量热图的方法,支持聚类和配色自定义修改