上周20161021-20161028的任务还没有搞完,所以今天来填坑(微笑脸)

××××××××××××××××××××我是萌萌哒分割线×××××××××××××××××××××××××××××××

本文参考:https://bitbucket.org/biobakery/biobakery/wiki/metaphlan2

MetaPhlAn2是使用宏基因组鸟枪法测序数据描绘微生物群落组成的工具。

ps: 与系统发育相关的图的表示

安装:

1. 下载并解压 2. 修改/etc/profile,添加路径 3. 直接使用metaphlan2.py

4. 使用这种命令时要给出bowtie2的路径--bowtie2_exe<bowtie2>.

××××××××××××××××××××××××××啦啦啦××××××××××××××××××××××××××××

帮助信息:metaphlan2.py -h | less使用上下箭头滚动查看,q退出。

实验内容:

Step 0 : 下载数据(右键,copy link address)

mkdir mytest

cd mytest

wget https://bitbucket.org/biobakery/biobakery/raw/tip/demos/biobakery_demos/data/metaphlan2/input/SRS014459-Stool.fasta.gz

Step 1: 使用单个reads文件作为输入

metaphlan2.py SRS014476-Supragingival_plaque.fasta.gz  --input_type fasta > SRS014476-Supragingival_plaque_profile.txt

bowtie2out.txt: intermediate mapping results to unique sequence markers
可以用这个命令查看(不过我觉得用gedit也可以啊==除非是命令行)
less -S SRS014476-Supragingival_plaque.fasta.gz.bowtie2out.txt
profile.txt:最终的结果
解释:
1. 这就是对分类的描述:Kingdom: k__, Phylum: p__, Class: c__, Order: o__, Family: f__, Genus: g__, Species: s__
2. 数字是百分比
3. OTU equivalents can be extracted by using only the species-level s__ clades from this file (again, making
sure to include clades unclassified at this level). Step 2: 多线程处理--nproc命令
metaphlan2.py SRS014459-Stool.fasta.gz --input_type fasta --nproc 4 > SRS014459-Stool_profile.txt
Step 3: 多输入处理
for f in *.fasta.gz
do
metaphlan2.py $f --input_type fasta --nproc 4 > ${f%.fasta.gz}_profile.txt
done Step 4: 合并结果(使用utils/merge_metaphlan_tables.py脚本)

/home/pxy7896/Downloads/metaphlan2/utils/merge_metaphlan_tables.py *_profile.txt > merged_abundance_table.txt

可以用LibreOffice Calc查看。。。因为数据多,有点丑。大概如下图,前面是分类信息,后面是几个文件的数量信息。

一定要看官方手册!!!!wiki的tutorial虽然好!!!但是!!不全!!MetaPhlAn2也提供了画图的脚本,画出来也挺萌的啊!!!我干嘛要去折腾别的画图!!!

心好累!!!下次再补这个的画图好了,如果用的到的话!!!

https://bitbucket.org/biobakery/metaphlan2#markdown-header-basic-usage

Step 5: 数据可视化,heatmap

(1) 安装brew

sudo apt install linuxbrew-wrapper

(2) 安装hclust2

brew tap biobakery/biobakery

brew install hclust2

安装失败。。。问题诡异。。。所以我决定先安装R语言包,用里面的函数heatmap什么的来画。

安装R参见:

http://www.cnblogs.com/pxy7896/p/6012895.html

=============================装完R之后再来装就神奇的成功了===================================

(3) 产生物种species丰度表(只有物种层面的)

使用命令:grep -E "(s__)|(^ID)" merged_abundance_table.txt | grep -v "t__" | sed 's/^.*s__//g' > merged_abundance_table_species.txt

命令解释:

1. grep是按指定模式输出的一个软件(库),参考用户手册:http://www.gnu.org/software/grep/manual/grep.pdf

2.

3. 画图

错误1: 找不到.py,加路径:/home/pxy7896/.linuxbrew/Cellar/hclust2/1.0.0-277c0d6

错误2:

安装matplotlib

sudo apt-get install python-matplotlib

然后发现没有scipy。。。同样安装。。

然后发现没有pandas。。。同样安装。。

这个问题。。。我还没解决。。。。

所以直接用官网给的数据吧(输入文件存为test.txt)。。。。感觉这个坑早晚要填。立flag

/home/pxy7896/.linuxbrew/Cellar/hclust2/1.0.0-277c0d6/hclust2.py -i test.txt -o abundance_heatmap_species.png --ftop 25 --f_dist_f braycurtis --s_dist_f braycurtis --cell_aspect_ratio 0.5 -l --flabel_size 6 --slabel_size 6 --max_flabel_len 100 --max_slabel_len 100 --minv 0.1 --dpi 300

参数解释~

select the top 25 features, use Bray-Curtis as the distance measure both between samples and between features (microbes), set the ratio between the width/height of cells to 0.5, use a log scale for assigning heatmap colors, set the sample and feature label size to 6, set the max sample and feature label length to 100, select the minimum value to display as 0.1, and select an image resolution of 300

Step 6: 数据v可视化,GraPhlAn

安装:

(1) 产生输入文件:

/home/pxy7896/.linuxbrew/Cellar/graphlan/0.9.7/bin/export2graphlan.py --skip_rows 1,2 -i merged_abundance_table.txt --tree merged_abundance.tree.txt --annotation merged_abundance.annot.txt --most_abundant 100 --abundance_threshold 1 --least_biomarkers 10 --annotations 5,6 --external_annotations 7 --min_clade_size 1

real奇怪。。。我明明已经改过环境路径了,还是找不到export2graphlan.py(微笑脸)

所以只好写一串了。最后产生

命令解释: skip rows 1 and 2, select the top 100 most abundance clades to highlight, set a minimum abundance threshold for clades to be annotated, extract a minimum of 10 biomarkers, select taxonomic levels 5 and 6 to be annotated within the tree, select taxonomic level 7 to be used in the external legend, and set the minimum size of clades annotated as biomarkers to 1.

(2) 画cladogram

/home/pxy7896/.linuxbrew/Cellar/graphlan/0.9.7/bin/graphlan_annotate.py --annot merged_abundance.annot.txt merged_abundance.tree.txt merged_abundance.xml

/home/pxy7896/.linuxbrew/Cellar/graphlan/0.9.7/bin/graphlan.py --dpi 300 merged_abundance.xml merged_abundance.png --external_legends

现在就出现了两个说明图片。。。和一张很好看的图~

不同颜色表示不同的分组,节点越大,丰度越高,从内而外表示门纲目科属,其中部分biomarker在树图中直接标出,其他的字母所代表的具体物种,在左侧的legend中标出。

安装生物信息学软件-MetaPhlAn2的更多相关文章

  1. 安装生物信息学软件-HUMAnN2

    先挖坑 因为这个软件需要memory>16G,所以应该要安装在服务器上

  2. 安装生物信息学软件-bowtie2

    好吧,这是本周(2016.10.21-28)的学习任务之一:安装bowtie2并学习其使用方法&参数设置 所以,啃文档咯,官方文档Version 2.2.9 http://bowtie-bio ...

  3. 安装生物信息学软件-R

    主要参考http://www.3fwork.com/b211/000091MYM021616/ Step 1 : sudo gedit /etc/apt/sources.list 添加到末尾 deb ...

  4. 安装生物信息学软件-Samtools

    装完Bowtie2,官方文档给出的栗子说可以玩一玩samtools,所以我入个坑 参考这篇http://m.010lm.com/roll/2016/0620/2343389.html Step 1: ...

  5. 安装生物信息学软件-Biopython

    其实好多东西装过好多次,然而每次都要翻文档,经常掉进前面掉进过的坑...所以这里重新写一份指南,以防下次再装又忘了(魂淡我并不想再装了啊不要立flag) 1. 安装biopython 1.1 因为bi ...

  6. 单机静默安装GI软件并创建ASM实例和ASM磁盘组

    环境:RHEL 6.4 + Oracle 11.2.0.4 需求:单机静默安装GI软件并创建ASM实例和ASM磁盘组,为后续迁移数据库文件到ASM做准备 1. 安装配置GI软件 2. 创建ASM实例 ...

  7. Linux删除apt-get安装的软件

    我们都知道安装软件最简单的方法是apt-get install,但是卸载就不常用了,如何卸载呢?1.sudo apt-get remove xxxxxsudo apt-get autoremove2. ...

  8. Linux 中如何卸载已安装的软件(转载)

            Linux 中如何卸载已安装的软件. Linux软件的安装和卸载一直是困扰许多新用户的难题.在Windows中,我们可以使用软件自带的安装卸载程序或在控制面板中的“添加/删除程序”来实 ...

  9. 安装ubuntu和安装ubuntu后要安装的软件列表

    安装ubuntu 老毛桃进入win pe修复启动项 在win pe下面制作ubuntu的安装盘,只用的软件是ultraISO 参考博客下面的分区的那篇文章  http://jingyan.baidu. ...

随机推荐

  1. 转 java中的session

    书中讲:以下情况,Session结束生命周期,Servlet容器将Session所占资源释放:1.客户端关闭浏览器2.Session过期3.服务器端调用了HttpSession的invalidate( ...

  2. resque 遍历加载job目录下的类

    <?php class resqueTest { public function actionWork() { #require dirname(__DIR__).'/commands/Test ...

  3. lua table 排序--满足多条件排序

    前提 假设 一个小怪 有三种属性,等级(level).品质(quality).id(pid) 我们需要对他们进行排序,两种排序情况,第一是单一属性排序,比如按照等级进行排序,或者多种属性进行优先级排序 ...

  4. Unity3D The Blacksmith Demo部分内容学习

    1.Plane Reflection 平面反射 在角色包的例子里可以看到,该脚本使用一个特定的相机渲染反射内容 官方介绍说这是优于反射探头的一种做法 2.HairRenderer 毛发渲染器 单独写的 ...

  5. 【Java】关于JVM运行时内存空间、JVM垃圾回收机制

    参考的优秀文章 <深入理解Java虚拟机 JVM高级特性与最佳实线>(机械工业出版社) Java虚拟机的堆.栈.堆栈如何去理解? 聊聊JVM的年轻代 前言 本文是<深入理解Java虚 ...

  6. VS下的解决方案目录结构设置和管理

    转载:http://blog.csdn.net/pl20140910/article/details/52074165 为了方便管理自己写的代码,也为了日后工作能方便的查找之前做过相同的代码,仿照某源 ...

  7. [问题2015S05] 复旦高等代数 II(14级)每周一题(第六教学周)

    [问题2015S05]  设 \(A\) 是 \(n\) 阶复方阵, 证明: \(A\) 可对角化的充分必要条件是 \(A\) 相似于某个如下的循环矩阵: \[C=\begin{pmatrix} a_ ...

  8. 解决 scroll() position:fixed 抖动、导航菜单固定头部(底部)跟随屏幕滚动

    一.导航栏或者页脚正常情况下固定在页面的相应位置,当页面滚动后,导航栏或者页脚固定在页面的顶部或者底部的情景 一般就是将该块的代码样式的position设置为fixed.固定在顶部的话,将top设置为 ...

  9. java中获取ServletContext常见方法

    http://blog.sina.com.cn/s/blog_3fe961ae0100wjnf.html 1.在javax.servlet.Filter中直接获取 ServletContext con ...

  10. shell编程—— EOF

    在shell编程中,”EOF“通常与”<<“结合使 用,“<<EOF“表示后续的输入作为子命令或子shell的输入,直到遇到”EOF“,再次返回到主调shell,可将其理解为分 ...