The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

NSR R package

Brian Maitner

2026-10-20

Native Species Resolver

The package NSR is designed to interact with the Native Species Resolver of the Botanical Information and Ecology Network.

#Installing NSR

library(devtools)
install_github("EnquistLab/RNSR")

#The easiest case: one species in one political division

library(NSR)
NSR_simple(species = "Acer rubrum",
           country =  "Canada",
           state_province = "Ontario")
##        family genus     species country state_province county_parish
## 1 Sapindaceae  Acer Acer rubrum  Canada        Ontario              
##      poldiv_full    poldiv_type native_status_country
## 1 Canada:Ontario state_province                     N
##   native_status_state_province native_status_county_parish native_status
## 1                            N                                         N
##                 native_status_reason native_status_sources isIntroduced
## 1 Native to region, as per checklist            powo, usda            0
##   isCultivatedNSR is_cultivated_taxon user_id
## 1               0                   0       1

#Multiple species When submitting data into the NSR, the function expects a data.frame containing 5 columns as input, however only the columns “species” and “country” (the first two) need to be populated. If you ever forget the input format, you can use the function NSR_template as a quick look-up, or to populate.

head(NSR_template())
##   species country state_province county_parish user_id
## 1      NA      NA             NA            NA      NA

#Example data

#First, pull the example data that are included with the package
data("nsr_testfile")
head(nsr_testfile)
##                   taxon   country    state_province county_parish user_id
## 1            Eucalyptus Australia Western Australia                     1
## 2 Abrothallus bertianus   Austria                                       2
## 3        Cocos nucifera   Jamaica                                       3
## 4            Eucalyptus    Mexico                                       4
## 5     Larrea tridentata    Mexico                                       5
## 6      Pinus ayacahuite    Mexico                                       6
example_results <- NSR(nsr_testfile)
## Problem with the API: HTTP Status 500
head(example_results)
## NULL

#Source metadata To access metadata for the sources currently consulted by the NSR, use the function NSR_metadata(). To figure out which political divisions contain checklists that were consulted by the NSR, use the function NSR_political_divisions().

sources <- NSR_metadata()

checklist_per_political_divisions <- NSR_political_divisions()

# If you'd rather see which political divisions are available within each checklist, set "by_country" to FALSE

political_divisions_per_checklist <- NSR_political_divisions(by_country = FALSE)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.