张金龙老师的 R plantlist packages 推荐用count_taxa()统计科属数目,用的是植物的中文学名,如果中文学名全部是正名,那么成功率是极高的。这里有一个问题,我们经常拿到的样本数据中,植物的拉丁学名已经是到plantlist网站
if(!require(devtools)) install.packages("devtools")
devtools::install_github("helixcn/plantlist")
library(plantlist)
# 读入大样地数据
xueming <- read.csv("E:/guiides/species.csv",header = T)
species_names<-xueming$scientific.name
# 统计物种数量
species_number <- length(unique(species_names))
# 依据上面的拉丁学名,函数TPL()查询目、科、属、以及科的编号
taxa_genus_family <- TPL(species_names)
# 统计所有物种所在的属数
genus_number <- length(unique(taxa_genus_family$POSSIBLE_GENUS))
# 统计所有物种所在的科数
family_number <- length(unique(taxa_genus_family$FAMILY))
# 统计所有物种所在的目数
order_number <- length(unique(taxa_genus_family$ORDER))