0-跟着science学宏基因组-背景和数据
写在前面
首先说几句话:
本小结代码不需要运行,只是告诉大家数据来源和这份代码的来源;
本小结的软件也不需要安装.
如果没有Ubuntu的随便安装一个就可以16-20都可以运行,例如:
下载一个Qiime2虚拟机,这也是Ubuntu系统,按照要求安装,运行在一个8G笔记本上都是可以直接运行整个宏基因组的。
如果不知道如何安装Qiime2,那直接搜索网络文档吧,实在是太多了。
如果是自己安装的Ubuntu系统,你需要安装上conda,配置一下国内源,我已经配制超过30台电脑了,你们有什么问题请留言,我们团队一半的人都具有配制环境的经验。
写在前面1 (2019年11月)
其中提到了作者的整套分析源码,存储位置zenodo:这是欧洲人建立的,当然这篇science也是欧洲人发表的。作为一份开放的数据存储平台,zenodo允许研究者存放数据,软件,报告等等与研究者相关的一些成果,最为关键的是这会为上传内容做一个DOI,方便了其他研究者引用。zenodo自2013年创立,2019年与数据库Dryad合作,目前正在发挥他的热度。(维基百科) 网址:点击访问
所以我们可以单独引用这套方法的DOI,这样这篇science就有了两个DOI了。
环境配制
本流程在Ubuntu18和Ubuntu20上测试,均没有问题。
这里我们了解一下yaml文件,当conda导出已有环境,环境会被保存在environment.yaml文件中。
conda env export > environment.yaml
当我们想再次创建该环境,或根据别人提供的.yaml文件复现环境时,就可以通过下面的命令来复现安装环境了。
conda env create -f environment.yaml
这篇science的env配置在env文件夹中:我们做一个配置,但这些工具有一些我们有了,一些还没有,所以我们单独安装一些就好了;
如果重新开始配置,按照下面命令创建一个虚拟环境:后在安装其他工具和数据库。(非常消耗时间)。这里作者提供了envs,我们可以按照如下格式进行安装,但是软件版本都比较老,不能保证成功,其次,我会将其使用的软件都做一个更新,如果代码不可用了,就修改代码。将这批代码改造成辽宁号。
conda env create -n science --file ./envs/bamm.yaml
所以后面有时间再来详细教配置;
文章原始宏基因组数据下载:
这篇science使用的snakemake做了一套流程。我们来逐步揭开它的面纱:找到原始数据地址原始数据NCBI我们下载list文件的对应的分组文件:注意NCBI改版之后在一下位置:
全部文件太多,好多是测单菌基因组的,所以寻找对应的宏基因组文件先来做单独的下载:
我们将这九个宏基因组run号提取到sub_10.txt文件中,然后只下载这9个样本
安装 sra-tools
虽然有了.yaml 文件,但是各位可以一次性配置成功的概率基本为0. 所以下面将再运行一个软件之前都进行安装相应的功能。
#conda install sra-tools#提示错误
#手动下载安装
curl -O https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/2.8.2/sratoolkit.2.8.2-ubuntu64.tar.gz
tar xzvf sratoolkit.2.8.2-ubuntu64
#添加环境变量
gedit ~/.bashrc
添加~/sra/sratoolkit.2.8.2-ubuntu64/bin进入
#运行
source ~/.bashrc
数据下载
#运行命令
prefetch --option-file ./sub_10.txt
太容易断掉了,这个可能要花费我好几天时间(但是我是一点办法都没有):
持续断掉,花费时间超过24h,等待下载:终于在第三个晚上过后我下载到了这九个文件(文件很多,我仅仅现在本次基本流程需要的文件)
解压文件
sra文件的解压,这里我做了一个循环。
for i in ERR793599.sra ERR793603.sra ERR793606.sra ERR793600.sra ERR793604.sra ERR793607.sra ERR793601.sra ERR793605.sra ERR793608.sra; do echo $i; fastq-dump --split-3 $i; done
完成之后发现这些文件很友好嘛。每个都在1G以内,但是还是太大了,我们这次进行的是流程测试,所以我将进行抽样,那我就可以使用小电脑操作了。让每个人都可以运行宏基因组。
抽样-百分之一
for i in ./*_1.fastq.gz
do
base=$(basename $i _1.fastq.gz)
echo $base
seqkit sample -p 0.01 -s 1 ./${base}_1.fastq.gz -o ./rawdata_0.01/SUB${base}_1.fq.gz
seqkit common ./${base}_2.fastq.gz ./rawdata_0.01/SUB${base}_1.fq.gz -o ./rawdata_0.01/SUB${base}_2.fq.gz
done
NCBI下载的序列前后端没有区分,这里进行一个区分
gunzip rawdata_0.01/*.gz
sed -i '1~4 s/$/ 1:N:0 \\1/g' rawdata_0.01/*_1.fq
sed -i '1~4 s/$/ 2:N:0 \\2/g' rawdata_0.01/*_2.fq
pigz rawdata_0.01/*.fq
这里将原始数据存储到github中,地址:https://github.com/taowenmicro/Megagenome_learing (大家可以上去下载了)
根际互作生物学研究室 简介
根际互作生物学研究室是沈其荣教授土壤微生物与有机肥团队下的一个关注于根际互作的研究小组。本小组由袁军副教授带领,主要关注:1.植物和微生物互作在抗病过程中的作用;2 环境微生物大数据整合研究;3 环境代谢组及其与微生物过程研究体系开发和应用。团队在过去三年中在 isme J, Microbiome, PCE,SBB,Horticulture Research等期刊上发表了多篇文章。欢迎关注 微生信生物 公众号对本研究小组进行了解。
团队工作及其成果 (点击查看)
了解 交流 合作
团队成员邮箱 袁军:junyuan@njau.edu.cn;文涛:2018203048@njau.edu.cn
团队公众号:微生信生物 添加主编微信,或者后台留言;
加主编微信 加入群聊
关于微生信生物 你想要的都在这里
如果你想看我的心路历程 下面就是啦
写在前面 (2020年5月2日) 经过一天多的学习,这部分的内容终于终于将一半内容进行了清楚的认识,结构及逆行了整理,下一步,使用全部的数据完成这部分内容,这部分内容占据整套流程的50%,后一半的流程主要是基因组组装和功能进一步细化分析,orf预测功能来源等:
写在前面3 (2020年5月1日)
还说什么呢?都第三次了,还没有将这份代码弄完,继续往下学习。我发现在3个月之前作者有重新跟新了一次代码:https://github.com/nioo-knaw/orochi ,大家可以下载新的代码学习,但是我发现重要的部分还是没有改版,是不可能直接运行出来结果的。其次这里有个百度文库写的不错:https://wenku.baidu.com/view/14f55f4352d380eb62946df5.html。还有这一份:
最新的megan6使用:
https://github.com/kpitz/Zooplankton-biogeographic-boundaries-in-the-California-Current/blob/8a171d441964cc168edb4ee8df47ca214af4e5bc/Banzai_Output/COI/Analysis_20190921_1416/all_lib/Post_Blast_20190925_0914/Post_BLAST_analysis_script.txt
另外我发现一个巨大的测序数据处理工具https://github.com/cgat-developers;
写在前面2 (2020年1月31日)
现在时间是2020年1月31日,目前距离这篇文章发布已经两个多月了,今天是农历的正月初七,本该是上班的第一天,但是随着新型冠状病毒的蔓延,全国都笼罩在危急中,无奈大家都只能待在家里进行学习。武汉加油!中国加油!
早在文章发出去的时候我学习了一部分这篇science的流程,首先我将感想写到这里:
这份流程很完善,并且不仅仅是有代码,还有分析的思路和思维在里面,单单靠这个流程,作者都可以发一篇文章了,这将近2000行的代码让我感到了压力。但是这份代码并不是都是可利用的,里面很多的代码或者脚本都过时了,使用的软件很多都是旧版本,这份代码就是前苏联的瓦良格号,面对这浩瀚的工程,我急于改造却发现以一人之力上不可完成。空余时间有限,所以当时就暂停了。
如今是新的一年,我现在将这个工作重新接上!