我想使用dismo (R packages)下载gbif物种出现数据,用于物种分布分析。我已经阅读了指南,并在大多数情况下成功地进行了我们的分析。我在这里使用了代码。
gbif("genus","species", geo=FALSE)但是,我想将某些亚种分开单独分析。有没有什么方法可以从某些亚种中提取信息?
发布于 2017-08-15 11:45:49
基于gbif的文档和dismo的vignettes,我们可以将*附加到物种名称,以获得该物种名称下的所有变体。下面的示例从vignettes下载Solanum acaule下的所有记录。
acaule <- gbif("solanum", "acaule*", geo = FALSE)得到的数据帧acaule包含115个变量,大约有7000条记录。在这些变量中,scientificName列包含该记录的全名。我们可以使用该列来识别与某个亚种相关的记录。
例如,我们可以首先使用table函数来查看每个物种名称的数量。
table(acaule$scientificName)
Solanum acaule Bitter
5608
Solanum acaule subsp. acaule
1444
Solanum acaule subsp. punae (Juz.) Hawkes & Hjert.
14
Solanum acaule var. punae (Juz.) Hawkes
9
Solanum acaule var. subexinterruptum Bitter
2
Solanum schreiteri Bukasov
2
Solanum uyunense Cárdenas
2现在,我们可以根据scientificName中的关键字对数据帧进行子集,以找到我们想要的记录。假设我们只想在其scientificName中包含subsp.的记录,我们可以执行以下操作:
acaule_sub <- subset(acaule, grepl("subsp.", scientificName, fixed = TRUE))现在acaule_sub是一个有1458条记录的数据帧,这些记录都具有与"subsp.“相关的学名。
不确定这是否是你所需要的,但我希望它能有所帮助!
https://stackoverflow.com/questions/44882874
复制相似问题