| Contributors | Affiliation | Role |
|---|---|---|
| Nelson, James | University of Georgia (UGA) | Principal Investigator |
| Leavitt, Herbert | University of Georgia (UGA) | Student |
| Thomas, Alexander | University of Georgia (UGA) | Student |
| York, Amber D. | Woods Hole Oceanographic Institution (WHOI BCO-DMO) | BCO-DMO Data Manager |
This is one of four datasets in the BCO-DMO catalog that were produced with the "Fourchon Nekton Turnover Workflow" (v1.0.0, doi: https://doi.org/10.5281/ZENODO.18165331). BCO-DMO hosts the datasets and supplemental data produced by this workflow that have had minor modifications to enhance the interoperability of the data and were imported into the BCO-DMO data system (See more in section "BCO-DMO Processing"). The workflow contains the exact formats of the data files produced and used by the workflow scripts. The workflow contains scripts, configurations, readme files, and input/output files for four stages listed below. Each workflow stage corresponds to a BCO-DMO dataset (See "Related Datasets" section on the BCO-DMO pages).
"Fourchon Nekton Turnover Workflow" steps with corresponding BCO-DMO dataset IDs:
The workflow release (v1.0.0) contains data and scripts used to run analyses and produce figures for publication Leavitt, H; Thomas, A; Doerr, J; Johnson, D; Nelson, J. (In press) Resilient Nekton Composition in the Face of Climate-Driven Foundation Species Shifts. Ecology. Accepted 2025-11-14
Species Thermal Indices (STIs) were calculated from cleaned GBIF occurrence records to represent the typical thermal conditions occupied by each taxon across its realized range. For each species, all vetted occurrence records with valid geographic coordinates were compiled and associated with airtemperature values extracted from the WorldClim bioclimatic dataset (BIO6: mean temperature of the coldest month), used here as a consistent proxy for thermal regime in coastal and estuarine systems. To ensure all points could be associated with a land-surface temperature, temperature was calculated as the mean value of pixels within 0.05 degrees of the point.
To minimize spatial sampling bias caused by uneven GBIF reporting density, occurrence records were spatially thinned prior to STI calculation. Records were projected into a metric coordinate system and overlaid with a 50-km hexagonal grid. Within each grid cell, a single occurrence per species was retained at random, ensuring that no region disproportionately influenced thermal estimates.
Following thinning, STI for each species was calculated as the mean SST across all retained occurrences. To characterize uncertainty and thermal breadth, we also computed the 2.5th and 97.5th percentiles of SST values, their difference (thermal range), and a robust estimate of the northern thermal limit based on the 99th percentile of latitude. These metrics describe both central tendency and variability in species’ thermal associations while reducing sensitivity to outliers and oversampled regions.
Community Temperature Index (CTI) was calculated by integrating species-level STIs with site-level community composition data. A community matrix containing species abundances (or counts) per sample was first aligned with the STI dataset so that only taxa present in both datasets were included.
For each sample, CTI was computed as the abundance-weighted mean of species STIs, such that species contributing more individuals to a community had proportionally greater influence on the index. Formally, CTI for a given sample is the sum of each species’ abundance multiplied by its STI, divided by the total abundance of all species in that sample. This formulation yields a continuous metric reflecting the thermal affinity of the community as a whole.
To estimate the average low-temp limit for the community, parallel CTI calculations were performed using the lower (2.5th percentile) STI estimates and STI thermal ranges, producing complementary community-level metrics that reflect minimum temperature estimates and thermal niche breadth. These CTI values were then appended to the community dataset along with sample metadata (e.g., year and sample ID) for downstream analyses of temporal and spatial trends.
This dataset corresponds to Step 3 of the study's processing workflow 'Fourchon Nekton Turnover Workflow' (doi: 10.5281/zenodo.18165331). See "Description" and "BCO-DMO Processing" sections for context about the relationship between the workflow files and the data as published at BCO-DMO.
This step links cleaned GBIF occurrences to climatology to quantify species- and community-scale thermal affinities. Occurrence points are spatially thinned to reduce sampling bias, paired with WorldClim SST (bio6) to derive per-taxon species thermal indices and latitudinal envelopes, then joined to multi-year community matrices to compute CTI metrics (means and confidence bounds) for each sample.
Purpose: extract sea surface temperature (SST) for GBIF occurrences, thin spatially dense records, compute species thermal indices (STI), and derive community temperature indices (CTI).
Primary script
Inputs
Outputs (outputs/)
R version 4.5.1 (2025-06-13 ucrt) Platform: x86_64-w64-mingw32/x64 Running under: Windows 11 x64 (build 26100) Matrix products: default LAPACK version 3.12.1 locale: [1] LC_COLLATE=English_United States.utf8 [2] LC_CTYPE=English_United States.utf8 [3] LC_MONETARY=English_United States.utf8 [4] LC_NUMERIC=C [5] LC_TIME=English_United States.utf8 time zone: America/New_York tzcode source: internal attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] ggrepel_0.9.6 sf_1.0-21 CoordinateCleaner_3.0.1 [4] sdmpredictors_0.2.15 sp_2.2-0 terra_1.8-60 [7] lubridate_1.9.4 forcats_1.0.1 stringr_1.5.2 [10] dplyr_1.1.4 purrr_1.1.0 readr_2.1.5 [13] tidyr_1.3.1 tibble_3.3.0 ggplot2_4.0.0 [16] tidyverse_2.0.0 rgbif_3.8.3 loaded via a namespace (and not attached): [1] generics_0.1.4 class_7.3-23 xml2_1.4.0 [4] KernSmooth_2.23-26 stringi_1.8.7 lattice_0.22-7 [7] hms_1.1.4 magrittr_2.0.3 grid_4.5.1 [10] timechange_0.3.0 RColorBrewer_1.1-3 rnaturalearth_1.1.0 [13] plyr_1.8.9 jsonlite_2.0.0 whisker_0.4.1 [16] e1071_1.7-16 DBI_1.2.3 httr_1.4.7 [19] scales_1.4.0 oai_0.4.0 codetools_0.2-20 [22] lazyeval_0.2.2 cli_3.6.5 rlang_1.1.6 [25] units_0.8-7 withr_3.0.2 tools_4.5.1 [28] raster_3.6-32 tzdb_0.5.0 geosphere_1.5-20 [31] vctrs_0.6.5 R6_2.6.1 proxy_0.4-27 [34] classInt_0.4-11 lifecycle_1.0.4 pkgconfig_2.0.3 [37] pillar_1.11.1 gtable_0.3.6 data.table_1.17.8 [40] glue_1.8.0 Rcpp_1.1.0 tidyselect_1.2.1 [43] farver_2.1.2 compiler_4.5.1 S7_0.2.0 >
Run order
Version 1 (2026-01-08):
Data from the processing workflow were prepared and published at BCO-DMO after reorganization into datasets with minor changes performed to meet the required conventions implemented by BCO-DMO designed for interoperability, standardization, and a variety of data access methods.
Files submitted to BCO-DMO correspond to the study's outputs in workflow (doi: 10.5281/zenodo.18165331) step 3 "3_CTI_calculations":
"Fourchon Nekton Turnover Workflow/3_CTI_calculations/outputs/" files
* pivot_clean.csv (This became the primary table for the BCO-DMO dataset "941250_v1_port-fourchon_cti.csv", see processing notes below for additional changes.)
* STI_results_by_taxon.csv (This was added as a supplemental file to the BCO-DMO dataset page sti_results_by_taxon.csv after minor column name changes)
* species_latitudes.csv (This was added as a supplemental file after column name changes and an additional LSID column added.
Primary dataset table modifications:
* pivot_clean.csv loaded into the bco-dmo data system
* un-named initial index row dropped from the table (as submitter indicated that was fine and this was a legacy id that was not needed).
* column names adjusted for interoperability (letters, only numbers, underscores)
* Primary table attached to BCO-DMO page as "941250_v1_port-fourchon_cti.csv"
* Column descriptions added to the "Parameters" section of the bco-dmo page including the addition of LSIDs in the column descriptions. This includes several LSIDs for names that do not appear in species_latitudes.csv and thus the LSID couldn't be found there. So the Parameters section conclusively has all the identifiers for all the names used.
Note about species latitudes:
* scientific name values conflict between "species" and "scientific_name" column with the "scientific_name" column having the currently accepted spelling. These were not modified as they correspond to related tables in the study. The AphiaID and LSID columns can be consulted for the authoritative species name information at the World Register of Marine Species (WoRMS).
| Parameter | Description | Units |
| SampleID | unique sample identifier matching 'pivot_all.csv' in 'Fourchon Nekton Turnover Workflow\1_raw_data\outputs\' (workflow doi: 10.5281/zenodo.18165331) | unitless |
| mean_sti | community-weighted mean STI for that sample | degrees Celsius |
| mean_sti_2pt5 | community-weighted mean of species-level 2.5th percentile SST | degrees Celsius |
| Year | survey year for the sample (can include multiple years e.g. '2022_2023') | unitless |
| mean_sti_range | community-weighted mean of species STI ranges ('sti_range' in file 'STI_results_by_taxon.csv') | degrees Celsius |
| Achirus_lineatus | Sample-level abundance counts (individuals per drop sample) for 'Achirus lineatus' (LSID urn:lsid:marinespecies.org:taxname:279493). | count |
| Alpheus_heterochaelis | Sample-level abundance counts (individuals per drop sample) for 'Alpheus heterochaelis' (LSID urn:lsid:marinespecies.org:taxname:158348). | count |
| Anchoa_mitchilli | Sample-level abundance counts (individuals per drop sample) for 'Anchoa mitchilli' (LSID urn:lsid:marinespecies.org:taxname:158699). | count |
| Archosargus_probatocephalus | Sample-level abundance counts (individuals per drop sample) for 'Archosargus probatocephalus' (LSID urn:lsid:marinespecies.org:taxname:159238). | count |
| Ariopsis_felis | Sample-level abundance counts (individuals per drop sample) for 'Ariopsis felis' (LSID urn:lsid:marinespecies.org:taxname:158709). | count |
| Armases_americanum | Sample-level abundance counts (individuals per drop sample) for 'Armases americanum' (LSID urn:lsid:marinespecies.org:taxname:422191). | count |
| Armases_benedicti | Sample-level abundance counts (individuals per drop sample) for 'Armases benedicti' (LSID urn:lsid:marinespecies.org:taxname:422192). | count |
| Armases_cinereum | Sample-level abundance counts (individuals per drop sample) for 'Armases cinereum' (LSID urn:lsid:marinespecies.org:taxname:158049). | count |
| Bagre_marinus | Sample-level abundance counts (individuals per drop sample) for 'Bagre marinus' (LSID urn:lsid:marinespecies.org:taxname:158713). | count |
| Bairdiella_chrysoura | Sample-level abundance counts (individuals per drop sample) for 'Bairdiella chrysoura' (LSID urn:lsid:marinespecies.org:taxname:159303). | count |
| Bathygobius_soporator | Sample-level abundance counts (individuals per drop sample) for 'Bathygobius soporator' (LSID urn:lsid:marinespecies.org:taxname:277638). | count |
| Callinectes_sapidus | Sample-level abundance counts (individuals per drop sample) for 'Callinectes sapidus' (LSID urn:lsid:marinespecies.org:taxname:107379). | count |
| Callinectes_similis | Sample-level abundance counts (individuals per drop sample) for 'Callinectes similis' (LSID urn:lsid:marinespecies.org:taxname:158055). | count |
| Citharichthys_spilopterus | Sample-level abundance counts (individuals per drop sample) for 'Citharichthys spilopterus' (LSID urn:lsid:marinespecies.org:taxname:159166). | count |
| Clibanarius_vittatus | Sample-level abundance counts (individuals per drop sample) for 'Clibanarius vittatus' (LSID urn:lsid:marinespecies.org:taxname:367528). | count |
| Crassostrea_virginica | Sample-level abundance counts (individuals per drop sample) for 'Crassostrea virginica' (LSID urn:lsid:marinespecies.org:taxname:140657). | count |
| Ctenogobius_boleosoma | Sample-level abundance counts (individuals per drop sample) for 'Ctenogobius boleosoma' (LSID urn:lsid:marinespecies.org:taxname:159750). | count |
| Ctenogobius_shufeldti | Sample-level abundance counts (individuals per drop sample) for 'Ctenogobius shufeldti' (LSID urn:lsid:marinespecies.org:taxname:276490). | count |
| Cynoscion_arenarius | Sample-level abundance counts (individuals per drop sample) for 'Cynoscion arenarius' (LSID urn:lsid:marinespecies.org:taxname:276077). | count |
| Cynoscion_nebulosus | Sample-level abundance counts (individuals per drop sample) for 'Cynoscion nebulosus' (LSID urn:lsid:marinespecies.org:taxname:159312). | count |
| Cyprinodon_variegatus | Sample-level abundance counts (individuals per drop sample) for 'Cyprinodon variegatus' (LSID urn:lsid:marinespecies.org:taxname:159285). | count |
| Dormitator_maculatus | Sample-level abundance counts (individuals per drop sample) for 'Dormitator maculatus' (LSID urn:lsid:marinespecies.org:taxname:159700). | count |
| Eleotris_amblyopsis | Sample-level abundance counts (individuals per drop sample) for 'Eleotris amblyopsis' (LSID urn:lsid:marinespecies.org:taxname:277793). | count |
| Eucinostomus_argenteus | Sample-level abundance counts (individuals per drop sample) for 'Eucinostomus argenteus' (LSID urn:lsid:marinespecies.org:taxname:159732). | count |
| Eucinostomus_melanopterus | Sample-level abundance counts (individuals per drop sample) for 'Eucinostomus melanopterus' (LSID urn:lsid:marinespecies.org:taxname:276423). | count |
| Eurytium_limosum | Sample-level abundance counts (individuals per drop sample) for 'Eurytium limosum' (LSID urn:lsid:marinespecies.org:taxname:422077). | count |
| Evorthodus_lyricus | Sample-level abundance counts (individuals per drop sample) for 'Evorthodus lyricus' (LSID urn:lsid:marinespecies.org:taxname:159743). | count |
| Fundulus_grandis | Sample-level abundance counts (individuals per drop sample) for 'Fundulus grandis' (LSID urn:lsid:marinespecies.org:taxname:276030). | count |
| Fundulus_jenkinsi | Sample-level abundance counts (individuals per drop sample) for 'Fundulus jenkinsi' (LSID urn:lsid:marinespecies.org:taxname:276031). | count |
| Fundulus_pulvereus | Sample-level abundance counts (individuals per drop sample) for 'Fundulus pulvereus' (LSID urn:lsid:marinespecies.org:taxname:276033). | count |
| Fundulus_similis | Sample-level abundance counts (individuals per drop sample) for 'Fundulus similis' (LSID urn:lsid:marinespecies.org:taxname:276034). | count |
| Fundulus_xenicus | Sample-level abundance counts (individuals per drop sample) for 'Fundulus xenicus' (LSID urn:lsid:marinespecies.org:taxname:308885). | count |
| Gobionellus_oceanicus | Sample-level abundance counts (individuals per drop sample) for 'Gobionellus oceanicus' (LSID urn:lsid:marinespecies.org:taxname:159753). | count |
| Gobiosoma_bosc | Sample-level abundance counts (individuals per drop sample) for 'Gobiosoma bosc' (LSID urn:lsid:marinespecies.org:taxname:159767). | count |
| Lagodon_rhomboides | Sample-level abundance counts (individuals per drop sample) for 'Lagodon rhomboides' (LSID urn:lsid:marinespecies.org:taxname:159249). | count |
| Leiostomus_xanthurus | Sample-level abundance counts (individuals per drop sample) for 'Leiostomus xanthurus' (LSID urn:lsid:marinespecies.org:taxname:159322). | count |
| Littoraria_irrorata | Sample-level abundance counts (individuals per drop sample) for 'Littoraria irrorata' (LSID urn:lsid:marinespecies.org:taxname:419566). | count |
| Lucania_parva | Sample-level abundance counts (individuals per drop sample) for 'Lucania parva' (LSID urn:lsid:marinespecies.org:taxname:159310). | count |
| Lutjanus_griseus | Sample-level abundance counts (individuals per drop sample) for 'Lutjanus griseus' (LSID urn:lsid:marinespecies.org:taxname:159797). | count |
| Menidia_beryllina | Sample-level abundance counts (individuals per drop sample) for 'Menidia beryllina' (LSID urn:lsid:marinespecies.org:taxname:159227). | count |
| Micropogonias_undulatus | Sample-level abundance counts (individuals per drop sample) for 'Micropogonias undulatus' (LSID urn:lsid:marinespecies.org:taxname:151158). | count |
| Minuca_spp | Sample-level abundance counts (individuals per drop sample) for 'Minuca spp.' (LSID urn:lsid:marinespecies.org:taxname:955256). | count |
| Mugil_cephalus | Sample-level abundance counts (individuals per drop sample) for 'Mugil cephalus' (LSID urn:lsid:marinespecies.org:taxname:126983). | count |
| Mugil_curema | Sample-level abundance counts (individuals per drop sample) for 'Mugil curema' (LSID urn:lsid:marinespecies.org:taxname:159416). | count |
| Myrophis_punctatus | Sample-level abundance counts (individuals per drop sample) for 'Myrophis punctatus' (LSID urn:lsid:marinespecies.org:taxname:158643). | count |
| Negaprion_brevirostris | Sample-level abundance counts (individuals per drop sample) for 'Negaprion brevirostris' (LSID urn:lsid:marinespecies.org:taxname:105800). | count |
| Neverita_delessertiana | Sample-level abundance counts (individuals per drop sample) for 'Neverita delessertiana' (LSID urn:lsid:marinespecies.org:taxname:419761). | count |
| Opsanus_beta | Sample-level abundance counts (individuals per drop sample) for 'Opsanus beta' (LSID urn:lsid:marinespecies.org:taxname:275645). | count |
| Pachygrapsus_gracilis | Sample-level abundance counts (individuals per drop sample) for 'Pachygrapsus gracilis' (LSID urn:lsid:marinespecies.org:taxname:241200). | count |
| Pagurus_longicarpus | Sample-level abundance counts (individuals per drop sample) for 'Pagurus longicarpus' (LSID urn:lsid:marinespecies.org:taxname:158403). | count |
| Palaemon_spp | Sample-level abundance counts (individuals per drop sample) for 'Palaemon spp.' (LSID urn:lsid:marinespecies.org:taxname:107032). | count |
| Panopeus_spp | Sample-level abundance counts (individuals per drop sample) for 'Panopeus spp.' (LSID urn:lsid:marinespecies.org:taxname:106937). | count |
| Paralichthys_lethostigma | Sample-level abundance counts (individuals per drop sample) for 'Paralichthys lethostigma' (LSID urn:lsid:marinespecies.org:taxname:158829). | count |
| Penaeus_aztecus | Sample-level abundance counts (individuals per drop sample) for 'Penaeus aztecus' (LSID urn:lsid:marinespecies.org:taxname:158332). | count |
| Penaeus_duorarum | Sample-level abundance counts (individuals per drop sample) for 'Penaeus duorarum' (LSID urn:lsid:marinespecies.org:taxname:158334). | count |
| Penaeus_setiferus | Sample-level abundance counts (individuals per drop sample) for 'Penaeus setiferus' (LSID urn:lsid:marinespecies.org:taxname:158336). | count |
| Petrolisthes_armatus | Sample-level abundance counts (individuals per drop sample) for 'Petrolisthes armatus' (LSID urn:lsid:marinespecies.org:taxname:396707). | count |
| Phrontis_vibex | Sample-level abundance counts (individuals per drop sample) for 'Phrontis vibex' (LSID urn:lsid:marinespecies.org:taxname:877061). | count |
| Poecilia_latipinna | Sample-level abundance counts (individuals per drop sample) for 'Poecilia latipinna' (LSID urn:lsid:marinespecies.org:taxname:275348). | count |
| Pogonias_cromis | Sample-level abundance counts (individuals per drop sample) for 'Pogonias cromis' (LSID urn:lsid:marinespecies.org:taxname:159333). | count |
| Probopyrus_pandalicola | Sample-level abundance counts (individuals per drop sample) for 'Probopyrus pandalicola' (LSID urn:lsid:marinespecies.org:taxname:157905). | count |
| Rhithropanopeus_harrisii | Sample-level abundance counts (individuals per drop sample) for 'Rhithropanopeus harrisii' (LSID urn:lsid:marinespecies.org:taxname:107414). | count |
| Sciaenops_ocellatus | Sample-level abundance counts (individuals per drop sample) for 'Sciaenops ocellatus' (LSID urn:lsid:marinespecies.org:taxname:159335). | count |
| Sesarma_reticulatum | Sample-level abundance counts (individuals per drop sample) for 'Sesarma reticulatum' (LSID urn:lsid:marinespecies.org:taxname:158458). | count |
| Solenosteira_cancellaria | Sample-level abundance counts (individuals per drop sample) for 'Solenosteira cancellaria' (LSID urn:lsid:marinespecies.org:taxname:419981). | count |
| Symphurus_plagiusa | Sample-level abundance counts (individuals per drop sample) for 'Symphurus plagiusa' (LSID urn:lsid:marinespecies.org:taxname:159363). | count |
| Syngnathus_louisianae | Sample-level abundance counts (individuals per drop sample) for 'Syngnathus louisianae' (LSID urn:lsid:marinespecies.org:taxname:159453). | count |
| Syngnathus_scovelli | Sample-level abundance counts (individuals per drop sample) for 'Syngnathus scovelli' (LSID urn:lsid:marinespecies.org:taxname:275232). | count |
| Trinectes_maculatus | Sample-level abundance counts (individuals per drop sample) for 'Trinectes maculatus' (LSID urn:lsid:marinespecies.org:taxname:159271). | count |
| Urosalpinx_cinerea | Sample-level abundance counts (individuals per drop sample) for 'Urosalpinx cinerea' (LSID urn:lsid:marinespecies.org:taxname:140429). | count |
NSF Award Abstract:
Coastal marshes provide a suite of vital functions that support natural and human communities. Humans frequently take for granted and exploit these ecosystem services without fully understanding the ecological feedbacks, linkages, and interdependencies of these processes to the wider ecosystem. As demands on coastal ecosystem services have risen, marshes have experienced substantial loss due to direct and indirect impacts from human activity. The rapidly changing coastal ecosystems of Louisiana provide a natural experiment for understanding how coastal change alters ecosystem function. This project is developing new metrics and tools to assess food web variability and test hypotheses on biodiversity and ecosystem function in coastal Louisiana. The research is determining how changing habitat configuration alters the distribution of energy across the seascape in a multitrophic system. This work is engaging students from the University of Louisiana Lafayette and Dillard University in placed-based learning by immersing them in the research and local restoration efforts to address land loss and preserve critical ecosystem services. Students are developing a deeper understanding of the complex issues facing coastal regions through formal course work, directed field work, and outreach. Students are interacting with stakeholders and managers who are currently battling coastal change. Their directed research projects are documenting changes in coastal habitat and coupling this knowledge with the consequences to ecosystems and the people who depend on them. By participating in the project students are emerging with knowledge and training that is making them into informed citizens and capable stewards of the future of our coastal ecosystems, while also preparing them for careers in STEM. The project is supporting two graduate students and a post-doc.
The transformation and movement of energy through a food web are key links between biodiversity and ecosystem function. A major hurdle to testing biodiversity ecosystem function theory is a limited ability to assess food web variability in space and time. This research is quantifying changing seascape structure, species diversity, and food web structure to better understand the relationship between biodiversity and energy flow through ecosystems. The project uses cutting edge tools and metrics to test hypotheses on how the distribution, abundance, and diversity of key species are altered by ecosystem change and how this affects function. The hypotheses driving the research are: 1) habitat is a more important indirect driver of trophic structure than a direct change to primary trophic pathways; and 2) horizontal and vertical diversity increases with habitat resource index. Stable isotope analysis is characterizing energy flow through the food web. Changes in horizontal and vertical diversity in a multitrophic system are being quantified using aerial surveys and field sampling. To assess the spatial and temporal change in food web resources, the project is combining results from stable isotope analysis and drone-based remote sensing technology to generate consumer specific energetic seascape maps (E-scapes) and trophic niche metrics. In combination these new metrics are providing insight into species’ responses to changing food web function across the seascape and through time.
This project is jointly funded by Biological Oceanography and the Established Program to Stimulate Competitive Research (EPSCoR).
This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
| Funding Source | Award |
|---|---|
| NSF Division of Ocean Sciences (NSF OCE) |