细菌基因组下载

最近需要尽可能的下载细菌基因组,ncbi ftp站点(ftp://ftp.ncbi.nlm.nih.gov/genomes)里面"all"这个目录可以下载,不过"all"目录还有古细菌之类的哈。如果只想取Refseq或genbank数据库其一,可以通过以下方式:

#下载Refseq/genbank数据库中的细菌基因组数据
#截止20190106,有140681条基因组数据
wget ftp://ftp.ncbi.nlm.nih.gov/genomes/refseq/bacteria/assembly_summary.txt
ftp://ftp.ncbi.nlm.nih.gov/genomes/genbank/bacteria/assembly_summary.txt
#文件第12列是拼接状态(Complete Genome/Scaffold/contig),第20列是ftp路径,下面是下载组装完整的基因组信息
awk -F "\t" '$12=="Complete Genome" && $11=="latest"{print $20}' assembly_summary.txt > ftpdirpaths
awk 'BEGIN{FS=OFS="/";filesuffix="genomic.gbff.gz"}{ftpdir=$0;asm=$10;file=asm"_"filesuffix;print ftpdir,file}' ftpdirpaths > ftpfilepaths
cut -d / -f 11 ftpfilepaths | paste - ftpfilepaths  | while read a b;do echo "wget -c -nd -r -np -k -L -p -nd -P genbank $b && gzip -d genbank/$a";done >run.download.sh
#脚本只下载了gbff文件,当然,如果想要gff,fna,faa通过小脚本转就可以了,或者加上“-A faa.gz,fna.gz,gff.gz,gpff.gz”

真的超级占存储空间,我只下载gbff文件,需要其他格式的文件再简单格式转化就可以了。同时,下载一批立马处理一批。
Refseq和genbank的区别
Refseq下载的是GCF开头的文件,而genbank下载的是GCA开头的文件。

具体看这里:https://zhuanlan.zhihu.com/p/20749737

GenBank是核苷酸数据库,RefSeq是基因数据库 ,具体哪个更全?互为补充,以前做分析的时候发现有些细菌基因组在GenBank里面没有在RefSeq有,还有可能两个数据库里面某个基因组只有一个fna文件没有注释,这种情况如果遇到自己动手用prokka十分钟就能解决。


生信小脚本收藏癖,有时遇到比较实用的脚本会存下来放在自己环境变量bin里面,积累会使以后的分析变得更加高效

附上两个网上看到好用的脚本

1.GenBank转faa格式

#!/usr/bin/env perl
# This program reads gbk files and extracts all amino acid sequences from the
# /translation fields into a FASTA file. The FASTA header contains a sequential
# number followed by the taxon id, which is extracted from the
# /db_xref="taxon:<ID>" field. Only letters in the 20 letter amino acid
# alphabet are retained in the FASTA file.
#
# author: Peter Menzel
#
# This file is part of Kaiju, Copyright 2015-2017 Peter Menzel and Anders Krogh
# Kaiju is licensed under the GPLv3, see the file LICENSE.
#

use strict;
use warnings;
use IO::Uncompress::AnyUncompress qw(anyuncompress $AnyUncompressError) ;

my $t = 0;
my $taxid;
my $protein_id;

if(!defined $ARGV[1]) { die "Usage: $0 infile.gbk outfile.faa"; }
open(OUT,">",$ARGV[1]) or die "Could not open file $ARGV[1] for writing.";
my $in_fh = new IO::Uncompress::AnyUncompress $ARGV[0] or die "Opening input file failed: $AnyUncompressError\n";

while(<$in_fh>) {
    chomp;
    if(m,/db_xref="taxon:(\d+)",) {
        $taxid = $1;
    }
    elsif(m,/protein_id="([^"]+)",) {
        $protein_id=$1;
    }
    elsif(m,\s+/translation="([^"]+)",)  {  
        if(!defined($taxid)) { die "No taxon id found in gbk file $ARGV\n";}
        print OUT ">$protein_id\_$taxid\n";
        my $seq = $1;
        $seq =~ tr/BZ/DE/;  # a.a. alphabet specifies `B' matches `N' or `D', and `Z' matches `Q' or `E.', here we use substitution with higher score
        $seq =~ s/[^ARNDCQEGHILKMFPSTWYV]//gi;
        print OUT "$seq\n";
    }
    elsif(m,\s+/translation="([^"]+)$,) {
        if(!defined($taxid)) { die "No taxon id found in gbk file $ARGV\n";}
        print OUT ">$protein_id\_$taxid\n";
        $t = 1;
        my $seq = $1;
        $seq =~ tr/BZ/DE/;
        $seq =~ s/[^ARNDCQEGHILKMFPSTWYV]//gi;
        print OUT "$seq\n";
    }
    elsif($t) {
        if(m,",) { 
            tr/BZ/DE/;
            s/[^ARNDCQEGHILKMFPSTWYV]//gi;
            print OUT $_,"\n";   
            $t = 0;
        }
        else { 
            tr/BZ/DE/;
            s/[^ARNDCQEGHILKMFPSTWYV]//gi;
            print OUT $_,"\n";   
        }
    }
}
close($in_fh);
close(OUT);

2.Genbank转fna格式

#!/usr/bin/env python

import sys
from Bio import SeqIO

if len(sys.argv) < 3:
    print('USAGE: gbk2fna GBK FNA')
    sys.exit(65)

SeqIO.write(SeqIO.parse(sys.argv[1], 'genbank'), sys.argv[2], 'fasta')
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容

  • 转载 :https://www.plob.org/article/3856.html 生物信息数据库与查询 近年来...
    oddxix阅读 10,295评论 0 37
  • 生物数据库介绍——NCBI NCBI(National Center for Biotechnology Info...
    又是一只小菜鸟阅读 8,670评论 1 33
  • 一、数据库简单介绍 1、SRA数据库: NCBI的SRA数据库是美国国立卫生研究院(NIH)存储高通量测序数据的主...
    BioLearner阅读 4,244评论 0 9
  • 前言 在前面的一系列WGS文章中,我讲述了很多基因数据分析的来龙去脉,虽然许多同学觉得很有帮助,但是却缺了一个重要...
    黄树嘉阅读 29,646评论 28 88
  • 六十亿公里的距离, 光芒几乎无法渗达。 在被遗忘的世界里, 身披光辉的你, 是否还能感受到 , 我那颗仍未泯灭的冰...
    六雨依鸣阅读 350评论 0 0