我有物种的分类 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/