Code Hub
NEON's data are often complex; working with data can be greatly simplified using software or code. We provide some code to get you started, like with our `neonUtilities` package for R, and also post links to code contributed by members of the community. The NEON-related code resources listed below are designed to make working with all NEON data easier, to perform common algorithms on select data products, and to share the code used to generate select data products.
Most code resources that were created by and are managed by NEON can be found in the NEONScience GitHub organization. The code is free and open access to download and utilize. The code found in the NEONScience GitHub organization is published and maintained by NEON project scientists.
Other code resources listed below are created by data users interested in sharing their code. If you have requests for coding resources, challenges with NEON data or ideas for creating NEON data-related code, we encourage you to learn more about how we categorize NEON-related code resources, and how you can submit your own code resources.
Code resources are provided at three tiers, differing in level of review by NEON:
Tier 1: Community Contributed Code | Community contributed code is reviewed to determine that it is publicly available, generally comprehensible, and involves NEON data. Code functionality is not evaluated. |
---|---|
Tier 2: NEON Certified Code | Certified code goes through a code review, to ensure it performs as described and without error. |
Tier 3: NEON Production Code | Production code is used in NEON data processing pipelines, to generate NEON data products. It is the end product of a very long and careful development process. |
Search the table below to find code that might be useful for your project.
Title | Description | Tier | Language | |
---|---|---|---|---|
neonhsWork with NEON hyperspectral data, including extracting spectra from point locations. Tier 1: Community contributed code R language The goal of neonhs is to make data from the National Ecological Observatory Network (NEON) Airborne Observation Platform (AOP) hyperspectral instrument easier to use. It allows you to efficiently extract spectra from spatial point locations, without worrying about the details of how the hyperspectral data are structured and stored.
Data products:
DP3.30006.001 | Spectrometer orthorectified surface directional reflectance - mosaic
Contributor name:
Max Joseph
License:
GNU General Public v3.0
Related collection system:
AOP (Airborne Observation Platform)
|
||||
NEON tree crown areaCalculate crown area of woody plants as seen from above based on height and diameter measurements. Tier 1: Community contributed code R language The dataset NEON.DOM.SITE.DP1.10098.001 - Woody plant vegetation structure provides structure measurements, including height, canopy diameter, and stem diameter, as well as mapped position of individual woody plants. However, crowns can overlap and they can also be fully contained within other crowns. In this script, overlapping crown areas are assigned to the taller individual, or split among individuals with the same height. Crown areas of smaller individuals completely covered by taller individuals are omitted. Data products:
DP1.10098.001 | Vegetation structure
Contributor name:
Anna Schweiger
License:
MIT
Related collection system:
AOP (Airborne Observation Platform), TOS (Terrestrial Observation System)
|
||||
neonPlantEcologyReformat and process plant presence and percent cover data Tier 1: Community contributed code R language This package contains scripts for processing plant species cover and occurrence data from NEON into more usable formats. The main functions are 'vegify', which creates vegan-friendly species occurrence and abundance matrices, and 'get_diversity_info', which creates summary statistics by plot (or subplot) on the diversity, cover, relative cover, and number of species of natives, non-natives, and members of the family or species of your choosing. Data products:
DP1.10058.001 | Plant presence and percent cover
Contributor name:
Adam Mahood
License:
MIT
Related collection system:
TOS (Terrestrial Observation System)
|
||||
neonstoreThis package provides a high-level interface for downloading and storing NEON data products. Tier 1: Community contributed code R language Provides functions for downloading and storing NEON data files. By using persistent storage, this package avoids repeated downloading of the same data, but enables retention of older versions of data that have since been updated. This storage system facilitates reproducibility. Also includes an option to construct a local duckdb database to work with tables that are too large to store in memory. Contributor name:
Carl Boettiger
License:
MIT
|
||||
NEONisoThis R package provides functions for downloading and calibrating atmospheric isotope data bundled into the eddy covariance data products. Tier 1: Community contributed code R language This R package provides functions for downloading and calibrating atmospheric isotope data bundled into the eddy covariance data products. The carbon isotope calibration methods are described in Fiorella et al. (2021; JGR-Biogeosciences) and are available in the CRAN version of the package, while water isotope calibration methods remain in development on Github. Data products:
DP1.00036.001 | Atmospheric CO2 isotopes, DP1.00037.001 | Atmospheric H2O isotopes, DP4.00200.001 | Bundled data products - eddy covariance
Contributor name:
Rich Fiorella
Related collection system:
SAE (Surface Atmosphere Exchange), TIS (Terrestrial Instrument System)
|
||||
neonMicrobeThis R package provides functions for working with NEON soil microbe data. Tier 1: Community contributed code R language neonMicrobe is a suite of functions for downloading, pre-processing, and assembling heterogeneous data around the NEON soil microbe marker gene sequence data. To do so, neonMicrobe downloads NEON data products from the NEON Data API and processes sequences using the DADA2 workflow. Qin et al 2021 describes the functionality of this package in detail: https://esajournals.onlinelibrary.wiley.com/doi/full/10.1002/ecs2.3842 Data products:
DP1.10086.001 | Soil physical and chemical properties, periodic, DP1.10108.001 | Soil microbe marker gene sequences
Contributor name:
Clara Qin
License:
GNU General Public v3.0
Related collection system:
TOS (Terrestrial Observation System)
|
||||
neonSoilFluxProvides soil carbon flux estimates and associated uncertainty as well as key environmental measurements that are used to compute soil fluxes. Tier 1: Community contributed code R language Acquires and synthesizes soil carbon fluxes at sites located in the National Ecological Observatory Network (NEON). Provides flux estimates and associated uncertainty as well as key environmental measurements (soil water, temperature, CO2 concentration) that are used to compute soil fluxes. Data products:
DP1.00004.001 | Barometric pressure, DP1.00041.001 | Soil temperature, DP1.00094.001 | Soil water content and water salinity, DP1.00095.001 | Soil CO2 concentration, DP1.00096.001 | Soil physical and chemical properties, Megapit
Contributor name:
John Zobitz
License:
GNU General Public v3.0
Related collection system:
TIS (Terrestrial Instrument System), TOS (Terrestrial Observation System)
|
||||
HemiPyA Python module for automated estimation of forest biophysical variables and uncertainties from digital hemispherical photographs. Tier 1: Community contributed code Python For details about HemiPy's algorithms for calculating leaf area index (LAI) and other biophysical metrics from hemispherical photos, see https://doi.org/10.1111/2041-210X.14199 Data products:
DP1.10017.001 | Digital hemispheric photos of plot vegetation
Contributor name:
Courtney Meier
License:
MIT
Related collection system:
TOS (Terrestrial Observation System)
|
||||
ecocomDPA flexible dataset design pattern for ecological community data to facilitate synthesis and reuse Tier 2: NEON certified code R language This R package provides tools to discover and work with biodiversity data that follow the ecocomDP design pattern, including wrapper functions to search for and download data from the NEON and EDI data portals. See O'Brien et al (2021) for an overview. See the GitHub repo for more information about the data model, tools to work with the data model, and information about planned enhancements and updates. Data products:
DP1.10003.001 | Breeding landbird point counts, DP1.10022.001 | Ground beetles sampled from pitfall traps, DP1.10043.001 | Mosquitoes sampled from CO2 traps, DP1.10058.001 | Plant presence and percent cover, DP1.10072.001 | Small mammal box trapping, DP1.10092.001 | Tick pathogen status, DP1.10093.001 | Ticks sampled using drag cloths, DP1.20107.001 | Fish electrofishing, gill netting, and fyke netting counts, DP1.20120.001 | Macroinvertebrate collection, DP1.20219.001 | Zooplankton collection, DP1.20163.001 | Periphyton, seston, and phytoplankton chemical properties
Contributor name:
Eric Sokol
License:
MIT
Related collection system:
AOS (Aquatic Observation System), TOS (Terrestrial Observation System)
|
||||
neonUtilitiesAccess NEON data programmatically and stack downloaded files with this handy R package. Tier 2: NEON certified code R language This package is available to install directly through CRAN. It includes functions for accessing NEON data via the API, a function to join (stack) the month-by-site files in downloaded NEON data, and functions for more specialized data access and conversion, such as extracting flux data from the published HDF5 format and converting data to geoCSV format. Check out our handy cheat sheet! Contributor name:
Claire Lunch
License:
GNU Affero General Public v3.0
Related collection system:
AIS (Aquatic Instrument System), AOP (Airborne Observation Platform), AOS (Aquatic Observation System), SAE (Surface Atmosphere Exchange), TIS (Terrestrial Instrument System), TOS (Terrestrial Observation System)
|