Python数据处理从零开始----第四章(可视化)(8)火山图目录

来源数据分别是差异基因分析的两列指标,FoldChange和Pvalue值,根据这两个指标,我们可以把基因分为up,down和normal三种差异表达类型,然后使用python的seaborn程序绘制散点图即可。最终得到想要的火山图,相对于ggplot2绘制火山图python的优点是步骤明确易懂。

# -*- coding: utf-8 -*-
"""
Created on Fri Nov 16 12:21:38 2018

@author: czh
"""

%clear
%reset -f
# In[*]

%matplotlib inline
import pandas as pd # Data analysis
import numpy as np # Scientific computing
import matplotlib.pyplot as plt # Plotting
import matplotlib.colors as colors # Coloring
import seaborn as sns # Statistical visualization
fold1 = pd.DataFrame(fold)
fold1['a'] = range(len(fold1))
fold1 = fold1.set_index('a')
# In[*]
pvalue1 = pd.DataFrame(pvalue)

result = pd.concat([fold1, pvalue1],axis=1,ignore_index=True)  

result.columns = ['fold','pvalue']

result['log(pvalue)'] = -np.log10(result['pvalue'])

# In[*]
result['sig'] = 'normal'

result['size']  =np.abs(result['fold'])/10
 
result.loc[(result.fold> 1 )&(result.pvalue < 0.05),'sig'] = 'up'
result.loc[(result.fold< -1 )&(result.pvalue < 0.05),'sig'] = 'down'

# In[*]
 ax = sns.scatterplot(x="fold", y="log(pvalue)",
                      hue='sig',
                      hue_order = ('down','normal','up'),
                      palette=("#377EB8","grey","#E41A1C"),
                      data=result)
ax.set_ylabel('-log(pvalue)',fontweight='bold')
ax.set_xlabel('FoldChange',fontweight='bold')

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏从流域到海域

Ubuntu16.04使用Anaconda5搭建TensorFlow使用环境 图文详细教程

本文转载于:http://blog.csdn.net/solo95/article/details/78960389,即专栏作者本人的博客,保留所有版权,禁止转...

43150
来自专栏用户2442861的专栏

caffe python 图片训练识别 实例

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/details...

94020
来自专栏Kubernetes

利用Kubernetes和Helm进行高效的超参数调优

在进行Hyperparameter Sweep的时候,我们需要根据许多不同的超参数组合进行不同的训练,为同一模型进行多次训练需要消耗大量计算资源或者耗费大量时间...

17210
来自专栏生信技能树

【r<-ROC|包】分析与可视化ROC——plotROC、pROC

在【r<-绘图|ROC】ROC的计算与绘制这篇文章中我讲了ROC曲线的本质以及如何计算和绘制ROC曲线。注意,我这里谈到的ROC并未曾涉及机器学习模型的拟合与预...

23120
来自专栏张善友的专栏

开源OCR引擎Tesseract

知名的开源OCR引擎Tesseract 3.0版本日前发布,可以在项目网站下载:http://code.google.com/p/tesseract-ocr, ...

1.3K100
来自专栏ATYUN订阅号

保存并加载您的Keras深度学习模型

Keras是一个用于深度学习的简单而强大的Python库。 鉴于深度学习模式可能需要数小时、数天甚至数周的时间来培训,了解如何保存并将其从磁盘中加载是很重要的...

65360
来自专栏HansBug's Lab

算法模板——sap网络最大流 1(非递归+邻接矩阵)

实现功能:首行输入N,M,S,T,代表这张图N个点,M条边,源点为S,汇点为T;接下来T行输入个边的出发点、终点和权值;输出最大流 原理:sap网络流算法(详见...

31970
来自专栏机器学习算法工程师

应用TF-Slim快速实现迁移学习

作者:张旭 编辑:张欢 这是一篇以实践为主的入门文章,目的在于用尽量少的成本组织起来一套可以训练和测试自己的分类任务的代码,其中就会用到迁移学习,TF-Sli...

61360
来自专栏PaddlePaddle

【FAQ】模型配置相关问题汇总

导语 我们用13篇推文向您介绍了如何安装、编译和使用PaddlePaddle,您可以点击公众号右下角的历史消息获取相应的使用指南。 ? 在使用指南的最后一部分,...

392100
来自专栏Small Code

【TensorFlow | TensorBoard】理解 TensorBoard

TensorBoard 是用于可视化 TensorFlow 模型的训练过程的工具(the flow of tensors),在你安装 TensorFlow 的时...

1.9K120

扫码关注云+社区

领取腾讯云代金券