r - 是否有任何 R 函数可以从物种分类 ID/物种名称或属名中提取所有分类名称(门、类、目、科...)?

标签 r bioinformatics ncbi ropensci

我有物种的分类 ID,我可以从 NCBI ( https://www.ncbi.nlm.nih.gov/Taxonomy/TaxIdentifier/tax_identifier.cgi ) 获得物种和属名。但我想要门、类、目……所有这些数据。

我试过了taxize package ,但不适用于大型数据集。

specieslist <- c("Clostridium", "Clostridium",  "Achromobacter",    "Achromobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Acinetobacter",    "Actinomyces",  "Actinomyces",  "Aeromonas",    "Agrococcus",   "Alcanivorax",  "Alkalihalobacillus",   "Alloprevotella",   "Aminobacterium",   "Amniculibacterium",    "Anaerocolumna",    "Anaerocolumna",    "Anaerocolumna",    "Asticcacaulis",    "Atopobium",    "Bacillus", "Bacillus", "Bacteroidales",    "Bacteroides",  "Bacteroides",  "Bacteroides",  "Bacteroides",  "Bacteroides",  "Bacteroides",  "Barnesiella",  "Bifidobacterium",  "Blochmannia",  "Bordetella",   "Brevibacillus",    "Buchnera", "Burkholderia", "Butyricimonas",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Campylobacter",    "Capnocytophaga",   "Capnocytophaga",   "Capnocytophaga",   "Chroococcidiopsis",    "Citrobacter",  "Clostridium",  "Clostridium",  "Clostridium",  "Clostridium",  "Corynebacterium",  "Corynebacterium",  "Corynebacterium",  "Corynebacterium",  "Cutibacterium",    "Dialister",    "Dolosigranulum",   "Enterobacter", "Enterococcus", "Entomoplasma", "Escherichia",  "Escherichia",  "Escherichia",  "Eubacterium",  "Fermentimonas",    "Frankia",  "Fusobacterium",    "Fusobacterium",    "Fusobacterium",    "Fusobacterium",    "Fusobacterium",    "Fusobacterium",    "Gemella",  "Haemophilus",  "Haemophilus",  "Halomonas",    "Hydrogenophaga",   "Ilyobacter",   "Klebsiella",   "Klebsiella",   "Klebsiella",   "Klebsiella",   "Klebsiella",   "Kocuria",  "Kytococcus",   "Lachnoanaerobaculum",  "Lachnospira",  "Lachnospiraceae",  "Lachnospiraceae",  "Lacrimispora", "Lactobacillus",    "Lactobacillus",    "Lactobacillus",    "Lactobacillus",    "Lactobacillus",    "Lancefieldella",   "Lautropia",    "Leptotrichia", "Leptotrichia", "Leptotrichia", "Leptotrichia", "Leptotrichia", "Leptotrichia", "Leptotrichia", "Leptotrichia", "Ligilactobacillus",    "Limosilactobacillus",  "Luteimonas",   "Lysinibacillus",   "Lysobacter",   "Lysobacter",   "Lysobacter",   "Magnetospirillum", "Marivirga",    "Megasphaera",  "Megasphaera",  "Meiothermus",  "Methylobacterium", "Methylobacterium", "Methylobacterium", "Methylobacterium", "Methylobacterium", "Microbacterium",   "Microbacterium",   "Microbacterium",   "Microbacterium",   "Micrococcus",  "Muribaculaceae",   "Muribaculum",  "Muribaculum",  "Neisseria",    "Neisseria",    "Neisseria",    "Neisseria",    "Neisseria",    "Neisseria",    "Neisseria",    "Nocardioides", "Nocardioides", "Paludibacter", "Pantoea",  "Paracoccus",   "Paracoccus",   "Paraprevotella",   "Pasteurella",  "Petrimonas",   "Phenylobacterium", "Phocaeicola",  "Phocaeicola",  "Phocaeicola",  "Phyllobacterium",  "Polaribacter", "Pontibacter",  "Pontibacter",  "Porphyromonas",    "Porphyromonas",    "Porphyromonas",    "Porphyromonas",    "Prevotella",   "Prevotella",   "Prevotella",   "Prevotella",   "Prevotella",   "Prevotella",   "Prevotella",   "Prevotella",   "Prevotella",   "Prevotella",   "Prevotella",   "Proteus",  "Pseudoleptotrichia",   "Pseudomonas",  "Pseudonocardia",   "Pseudonocardia",   "Raoultella",   "Rheinheimera", "Romboutsia",   "Roseivirga",   "Roseococcus",  "Rothia",   "Rothia",   "Rubrobacter",  "Rubrobacter",  "Rufibacter",   "Saccharomonospora",    "Saccharopolyspora",    "Saccharopolyspora",    "Salinivirga",  "Salmonella",   "Schaalia", "Sedimentisphaera", "Selenomonas",  "Selenomonas",  "Selenomonas",  "Selenomonas",  "Selenomonas",  "Selenomonas",  "Shigella", "Skermanella",  "Sphingosinicella", "Spirosoma",    "Staphylococcus",   "Staphylococcus",   "Stenotrophomonas", "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptococcus",    "Streptomyces", "Tannerella",   "Tannerella",   "Thermovirga",  "Treponema",    "Treponema",    "Treponema",    "Treponema",    "Treponema",    "Treponema",    "Veillonella",  "Veillonella",  "Veillonella",  "Veillonella",  "Veillonella")


t <- tax_name(query = c(specieslist), get = c("phylum","class", "order", "family", "genus"), db = "ncbi")

有什么建议吗?

最佳答案

(此处为维护者taxize)

如果 taxize 对您来说太慢,另一个选择是 taxizedb。默认使用 NCBI 作为数据源。 taxizedb 类似于taxize,但使用本地数据库转储而不是做http请求;但您确实有初始设置时间来下载数据库

install.packages("taxizedb")
library(taxizedb)
ids <- name2taxid(x, out_type="summary")
classification(ids$id)

然后你可以从每个data.frame中提取你想要的任何排名

关于r - 是否有任何 R 函数可以从物种分类 ID/物种名称或属名中提取所有分类名称(门、类、目、科...)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64747538/

相关文章:

r - 如何让RStudio使用R语言设置?

r - 是否有 R 代码集使用 PubMed ID 或 DOI 来获取该文章的数据文件?

r - 从数据库检索数据的函数出错

python - Ncbi蛋白质数据库,如何从特定生物项目获取蛋白质序列(python脚本)

r - 在 Shiny 的可 react 刷新期间保留用户指定的排序

当数据具有 NA 时,使用 plm 包和双向效应进行回归

workflow - 由于对作业完成情况进行冗长的顺序检查,Snakemake 处理大型工作流程速度缓慢? >100 倍减速

r - 在 GenomicRanges 对象中合并具有相同属性的相邻容器

r - 粘贴是绘图数学表达式中的特殊参数吗?

python - 使用 "Biopython"- 我怎样才能改进我的代码