不久前重組 FTP 後,一些腳本從 NCBI 下載細菌和真菌基因組。
這個想法無恥地從 Mick Watson 的 Kraken 下載器腳本中竊取,這些腳本也可以在 Mick 的 GitHub 儲存庫中找到。然而,Mick 的腳本是用 Perl 編寫的,專門用於實際建立 Kraken 資料庫(如宣傳的那樣)。
所以這是一組專注於實際基因組下載的腳本。
pip 安裝 ncbi-genome-下載
或者,從 GitHub 複製此儲存庫,然後執行(在 python 虛擬環境中)
點安裝。
如果這在舊版的 Python 上失敗,請先嘗試更新您的pip
工具:
pip 安裝 --升級 pip
然後重新執行ncbi-genome-download
安裝。
或者, ncbi-genome-download
打包在conda
中。請參閱 Anaconda/miniconda 網站來安裝發行版(強烈建議)。安裝後,可以執行以下操作:
conda install -c bioconda ncbi-genome-下載
ncbi-genome-download
僅在 Python 版本上進行開發和測試,仍受到 Python 專案的積極支援。目前,這意味著版本 3.7、3.8、3.9、3.10 和 3.11。具體來說,沒有嘗試在 3.7 之前的 Python 版本下進行測試。
如果您的系統卡在舊版的 Python 上,請考慮使用 Homebrew 等工具來取得更新版本。
ncbi-genome-download
0.2.12 是支援 Python 2 的最後一個版本。
若要從 NCBI 下載 GenBank 格式的所有細菌 RefSeq 基因組,請執行以下命令:
ncbi-基因組-下載細菌
也可以下載多個群組:
ncbi-基因組-下載細菌、病毒
注意:若要查看所有可用群組,請參閱ncbi-genome-download --help
,或僅使用all
來檢查所有群組。命名更具體的群組將減少下載大小以及尋找要下載的序列所需的時間。
如果您的連線速度相當快,您可能需要嘗試並行執行多個下載:
ncbi-基因組-下載細菌 --parallel 4
若要以 GenBank 格式從 NCBI 下載所有真菌 GenBank 基因組,請執行:
ncbi-genome-download --genbank 真菌部分
若要下載 FASTA 格式的所有病毒 RefSeq 基因組,請執行:
ncbi-genome-download --fasta 病毒格式
可以透過提供格式清單或簡單地下載所有格式來下載多種格式:
ncbi-genome-download --formats fasta、彙編報告病毒 ncbi-genome-download --格式化所有病毒
若要僅下載 GenBank 格式的完整細菌 RefSeq 基因組,請執行:
ncbi-genome-download --組裝級完整細菌
透過提供清單可以一次下載多個組件層級:
ncbi-genome-download --組裝等級完整,染色體細菌
若要僅從 RefSeq 下載 GenBank 格式的細菌參考基因組,請執行:
ncbi-genome-download --refseq-類別參考細菌
要下載鏈黴菌屬的細菌 RefSeq 基因組,請運行:
ncbi-genome-download --鏈黴菌屬
注意:這是僅由 NCBI 提供的生物體名稱的簡單字串匹配。
您也可以使用這個小技巧來下載特定物種的基因組:
ncbi-genome-download --「天藍色鏈黴菌」屬細菌
注意:引號很重要。同樣,這是對 NCBI 提供的生物體名稱的簡單字串匹配。
多個屬也是可能的:
ncbi-genome-download --「天藍色鏈黴菌、大腸桿菌」屬細菌
您也可以將屬名放入文件中,每行一個生物體,例如:
鏈黴菌屬 無枝酸菌屬
然後,將該檔案的路徑(例如my_genera.txt
)傳遞給--genera
選項,如下所示:
ncbi-genome-download --genera my_genera.txt 細菌
注意:上述指令將從 RefSeq 下載所有鏈黴菌屬和擬無枝酸菌基因組。
您可以使用--fuzzy-genus
選項使字串匹配模糊。如果您需要匹配 NCBI 生物名稱中間的值,這會很方便,如下所示:
ncbi-基因組-下載--天藍色屬--模糊屬細菌
注意:上述命令將從 RefSeq 下載其生物體名稱中包含「coelicolor」的所有細菌基因組。
若要根據 NCBI 物種分類 ID 下載細菌 RefSeq 基因組,請執行:
ncbi-genome-download --species-taxids 562 種細菌
注意:上述指令將下載屬於大腸桿菌的所有 RefSeq 基因組。
若要根據 NCBI 分類 ID 下載特定細菌 RefSeq 基因組,請執行:
ncbi-genome-download --taxids 511145 細菌
注意:上述指令將下載屬於大腸桿菌 str. 的 RefSeq 基因組。 K-12 子字串。 MG1655 。
也可以透過提供以逗號分隔的清單中的數字來下載多個物種的計程車或計程車:
ncbi-genome-download --taxids 9606,9685 --裝配級染色體 vertebrate_mammalian
注意:上述指令將下載貓和人類的參考基因組。
此外,您可以將多個物種分類樹或分類樹放入一個檔案中,每行一個,並將該檔案名稱分別傳遞給--species-taxids
或--taxids
參數。
假設您有一個包含以下內容的檔案my_taxids.txt
:
9606
9685
您可以像這樣下載貓和人類的參考基因組:
ncbi-genome-download --taxids my_taxids.txt --裝配層級染色體 vertebrate_mammalian
還可以在鏡像 NCBI 使用的佈局的同時創建人類可讀的目錄結構:
ncbi-genome-download --人類可讀的細菌
這將使用連結指向 NCBI 目錄結構中的相應文件,因此可以節省文件空間。請注意,某些 Windows 檔案系統和某些舊版本的 Windows 不支援連結。
也可以使用--human-readable
選項重新執行先前的下載。在這種情況下, ncbi-genome-download
將不會下載任何新的基因組文件,而只會創建人類可讀的目錄結構。請注意,如果 NCBI 端有任何文件發生更改,則會觸發文件下載。
有一個“試運行”選項來顯示將下載哪些種質(給定您的過濾器):
ncbi-genome-download -- 空運行細菌
如果要過濾組裝摘要文件的「與類型材料的關係」列,可以使用--type-materials
選項。可能的值為「任何」、「全部」、「類型」、「引用」、「同義詞」、「代理類型」和/或「neotype」。 「any」將包含與定義的類型材質值無關的程序集,「all」將只下載具有定義值的組件。可以給出多個值,用逗號分隔:
ncbi-genome-download --type-materials 類型,參考
預設情況下,ncbi-genome-download 會將各個分類組的組件摘要檔案快取一天。您可以使用--no-cache
選項跳過使用快取檔案。如果您想要刪除任何快取文件, --help
的輸出也會顯示快取目錄。
要獲得所有選項的概述,請運行
ncbi-基因組-下載--幫助
您也可以將其用作方法呼叫:
將 ncbi_genome_download 匯入為 ngdngd.download()
依照上面或--help
的描述傳遞 pythonized 關鍵字參數。若要指定分類組,例如細菌,請使用groups
關鍵字。若要指定檔案格式(例如--format
CLI 選項),請使用file_formats
。所有其他關鍵字應與 CLI 選項匹配,並將-
轉換為_
。請注意,由於方法呼叫遵循與 CLI 相同的邏輯,因此列表資料仍應作為字串傳遞,用逗號分隔,但不能有空格,就像在命令列上一樣。
gimme_taxa.py
該腳本可讓您找出要傳遞給ngd
TaxID,並編寫一個簡單的每行一項檔案來傳遞給它。它使用ete3
工具包,因此如果尚未滿足,請參考他們的網站來安裝依賴項。
您可以使用特定的 TaxID 或學名查詢資料庫。此腳本的主要功能是傳回指定父類別群的所有子類別群。該腳本對於在輸出中寫入哪些資訊有多種選項。
基本呼叫可能如下所示:
# 取得埃希氏菌屬的所有後代分類單元(taxid 561):python gimme_taxa.py -o ~/mytaxafile.txt 561# 或者,只需提供分類單元名稱python gimme_taxa.py -o all_descendent_taxids.txt Escherichia#您可提供多個分類單元和/或名稱python gimme_taxa.py -o all_descendent_taxids.txt 561,Methanobrevibacter
首次使用時,預設會在您的主目錄中建立一個小型 sqlite 資料庫(使用--database
標誌變更位置)。您可以使用--update
標誌來更新此資料庫。請注意,如果資料庫不在您的主目錄中,則必須使用--database
指定它,否則將在您的主目錄中建立新資料庫。
要查看所有幫助:
蟒蛇 gimme_taxa.py python gimme_taxa.py -h python gimme_taxa.py --help
要將gimme_taxa.py
腳本與ncbi-genome-download
的--taxids
選項一起使用,您需要使用-j
選項呼叫gimme_taxa.py
,如下所示:
gimme_taxa.py -j -o my_taxids.txt 大腸桿菌 ncbi-genome-download --taxids my_taxids.txt 細菌
ncbi-genome-download
您可以透過 Zenodo 存款在 DOI 下引用ncbi-genome-download
:10.5281/zenodo.8192432 或您使用的版本的特定 DOI。
所有程式碼均可在 Apache 許可證版本 2 下使用,有關詳細信息,請參閱LICENSE
文件。