Aerial canopy mapping paired with eDNA metabarcoding reveals quantitative links between kelp dynamics and fish community structure in Palos Verdes, California
Data files
Sep 03, 2026 version files 9.84 MB
-
Decontamination_PalosVerdesKelp_Vpub.R
58.49 KB
-
decontamination_utilities.R
3.97 KB
-
Kelp-o-matic_results.xlsx
9.16 KB
-
PV_c19_fishcard_ASV_raw_taxonomy_60.txt
9.54 MB
-
PV_eDNAvsKelp_Publication05202026.R
201.57 KB
-
PV_Metadata.csv
11.36 KB
-
README.md
9.46 KB
Abstract
Giant kelp (Macrocystis pyrifera) is a foundational species whose canopy structure supports high fish diversity and community complexity in temperate rocky reef ecosystems. The Palos Verdes Peninsula has a historically significant but degraded kelp forest ecosystem embedded in the urbanized Southern California Bight that has been the focus of recent restoration efforts. Here we utilized a combined approach of aerial drone mapping with eDNA metabarcoding to compare teleost fish diversity to kelp canopy coverage, spanning a winter-to-spring seasonal transition. eDNA detected 106 fish taxa representing 57 families. Fish species richness and Shannon diversity significantly increased with percent kelp canopy coverage, with samples from sites exceeding 30% canopy cover exhibiting markedly higher fish diversity than areas with lower kelp canopy coverage. Simpson diversity also differed significantly across canopy groups overall, but no pairwise contrast survived Bonferroni correction, suggesting that the differences in richness and Shannon diversity were driven primarily by the addition of less abundant taxa under high kelp cover rather than by shifts in evenness among dominant species. These results demonstrate the utility of eDNA metabarcoding and drone mapping as an efficient and effective tool for non-invasive kelp forest biomonitoring and restoration assessment.
Dataset DOI: 10.5061/dryad.47d7wm3vw
Description of the data and file structure
This dataset supports a study pairing aerial drone surveys of giant kelp (Macrocystis pyrifera) canopy with environmental DNA (eDNA) metabarcoding to examine how kelp dynamics relate to fish community structure at rocky reef sites in Palos Verdes, California, USA. Seawater samples were collected at reef sites and filtered for eDNA, and fish communities were characterized by amplifying and sequencing a 12S rRNA marker, with reads processed through the Anacapa Toolkit to produce ASV tables with taxonomic assignments. Concurrent drone imagery was used to quantify kelp canopy extent at each site. The dataset includes the processed ASV taxonomy tables, drone-derived kelp canopy metrics, and associated field and environmental metadata; raw sequencing reads are archived separately at NCBI (BioProject PRJNA1468404).
Files and variables
File: PV_Metadata.csv
Description: Sample-level field and laboratory metadata for all eDNA seawater samples and negative controls (121 rows, one per sequenced library), linking sequencing sample names to site, collection date, replicate structure, and paired drone-derived kelp canopy cover. Serves as the crosswalk between sample column names in PV_c19_fishcard_ASV_raw_taxonomy_60.txt and the kelp canopy data in Kelp-o-matic_results.
Variables:
- Seq_number: Unique sample identifier assigned at sequencing; matches the sample column names in the ASV taxonomy table (which carry the added prefix "c19_fishcard_"). Names encode site, date, and replicate as [SITE][MMDDYY][rep], e.g., NSE02162301 = Nearshore East, Feb 16 2023, bottle 1. A trailing A/B distinguishes technical replicates.
- New_Name: Sample identifier used in the R analysis scripts (identical to Seq_number for all samples in this dataset).
- Site: Sampling site. Values: "Artificial Reef 6D", "Nearshore (1) East", "Nearshore (2) West", "Offshore (1) East", "Offshore (2) West", and "MQ Blank" (MilliQ water field/filtration negative control). These correspond to the site codes AR, NSE, NSW, OSE, OSW, and MQ used in sample names.
- Date: Date of seawater collection, MM/DD/YYYY. Five sampling events: 2/16/2023, 3/28/2023, 4/21/2023, 5/19/2023, 6/22/2023.
- Bio_rep: Biological replicate, i.e., independent water bottle collected at the site on that date (A to D).
- Tech_rep: Technical replicate number (1 or 2) PCR replicate of the same extraction.
- Sample_Control: Whether the row is an environmental sample ("sample") or a negative control ("Control").
- Control_type: "Negative" for controls; blank (NA) for environmental samples.
- Sample: Project/region label ("Palos Verdes" for all rows).
- Fish_primer: Marker used for amplification ("Fish" = [MiFish-U?] 12S rRNA).
- Kelp_Canopy: Proportion of a 100 m radius circle (31,400 m^2) centered on the site covered by emergent kelp canopy on the drone flight paired with that sampling date, derived from the tide-corrected estimates in Kelp-o-matic_results (columns A to E estimated, divided by 31,400). Unitless proportion (0 to 1). Blank (NA) for the 4/21/2023 sampling event (no paired drone flight; see Methods for how this date was handled in analyses) and for MQ blanks.
File: PV_c19_fishcard_ASV_raw_taxonomy_60.txt
Description: Raw amplicon sequence variant (ASV) table with taxonomic assignments produced by the Anacapa Toolkit using the CALeDNA "fishcard" 12S CRUX reference database, with taxonomy assigned at a 60% bootstrap confidence cutoff. Tab-delimited; 32,738 ASVs (rows) by 102 columns (ASV identifier, 100 sample/read-fate columns, taxonomy). Values are unfiltered read counts prior to decontamination; the decontamination R script takes this file and PV_Metadata.csv as inputs. Not every sample in PV_Metadata.csv appears here: libraries that [failed sequencing / returned no reads] have no column.
Variables:
- fishcard_seq_number: Unique ASV identifier. The prefix (forward, reverse, merged, unmerged) records the dada2 read-fate class from which the ASV was derived; only "merged" ASVs are retained in downstream analyses (see decontamination script).
- Sample columns (c19_fishcard_[SITE][MMDDYY][rep]): Read count of each ASV in each sample. Sample naming follows Seq_number in PV_Metadata.csv (see above); e.g., c19_fishcard_AR05192302 = Artificial Reef, May 19 2023, bottle 2. Suffix 00 (e.g., MQ03282300) = negative control.
- c19_fishcard_Unassigned: Reads not assignable to any sample during demultiplexing.
- sum taxonomy: Assigned taxonomic path for the ASV, semicolon-delimited (Domain;Phylum;Class;Order;Family;Genus;Species). Empty ranks indicate no assignment at that level at the 60% bootstrap cutoff.
File: Kelp-o-matic_results.xlsx
Description: Giant kelp (Macrocystis pyrifera) surface canopy estimates from four drone surveys of the study area, with imagery classified using the Kelp-o-matic segmentation tool. Site-level tide-corrected estimates from this file, expressed as proportional cover, are the source of the Kelp_Canopy variable in PV_Metadata.csv. Flights are paired with eDNA sampling dates as follows: 2023_02_22 flight with 2/16/2023 samples, 2023_04_07 with 3/28/2023, 2023_06_02 with 5/19/2023, 2023_07_05 with 6/22/2023. No flight was paired with the 4/21/2023 sampling event.
Variables:
- Flight: Drone survey date, YYYY_MM_DD.
- Sea Surface Kelp acreage (m2) (KOM only): Total emergent kelp canopy area within the survey extent classified by Kelp-o-matic, in m^2, with percent of the survey extent; uncorrected for tide.
- Tidal height: Date, local time, and tidal height (m) during the flight.
- Estimated Kelp acreage with Tide (m2): Total canopy area corrected for tidal height at flight time, in m^2, with percent of survey extent
- Box acreage (m2): Total area of the survey extent (205,325 m^2).
- Nearshore East / Nearshore West / Artificial Reef / Offshore East / Offshore West: Uncorrected (KOM only) kelp canopy area, in m^2, within a 100 m radius circle centered on each eDNA sampling site.
- Area of each circle: Area of each site circle, 31,400 m2 (pi x 1002).
- A estimated to E estimated: Tide-corrected kelp canopy area, in m^2, within each site circle. A = Nearshore East, B = Nearshore West, C = Artificial Reef, D = Offshore East, E = Offshore West.
File: Decontamination_PalosVerdesKelp_Vpub.R
Description: R script implementing the eDNA decontamination and quality control workflow. Takes PV_c19_fishcard_ASV_raw_taxonomy_60.txt and PV_Metadata.csv as inputs; retains merged-read ASVs, removes contaminant reads using the MQ negative controls, applies a minimum read depth cutoff of 1,000 reads per sample and distribution-based outlier screening, and runs site occupancy modeling. Outputs cleaned taxon-by-sample tables (read counts and eDNA index, with technical replicates kept separate and summed) used by the analysis script.
File: decontamination_utilities.R
Description: Helper functions sourced by Decontamination_PalosVerdesKelp_Vpub.R.
Not run directly.
File: PV_eDNAvsKelp_Publication05202026.R
Description: Main analysis script. Reproduces all statistical analyses and figures in the manuscript from the decontaminated eDNA tables and kelp canopy data, including community composition, diversity, and kelp-fish relationship analyses (vegan, phyloseq, iNEXT, segmented regression).
Missing values: Blank (empty) cells indicate missing or not-applicable values throughout (e.g., Kelp_Canopy for the 4/21/2023 event and controls; Control_type for environmental samples).
Code/software
All data files are in plain, open formats requiring no proprietary software: the .csv and tab-delimited .txt files can be opened in any text editor, spreadsheet program (e.g., LibreOffice Calc), or programming language.
The included scripts are written in R version 4.4.1 (2024-06-14), free and open source (https://www.r-project.org), and were run on Windows.
1. Decontamination_PalosVerdesKelp_Vpub.R (with helper functions in decontamination_utilities.R) takes PV_c19_fishcard_ASV_raw_taxonomy_60.txt and PV_Metadata.csv as inputs and performs quality control, contaminant removal using negative controls, read depth filtering, and site occupancy modeling, writing cleaned taxon-by-sample tables to Output_R/ and Output_csv/ subdirectories. Key packages: tidyverse (dplyr, tidyr, stringr, tibble, purrr, ggplot2), phyloseq, ranacapa, microDecon, rstan (occupancy models; requires a C++ compiler toolchain), fitdistrplus, matrixStats, reshape2, here.
2. PV_eDNAvsKelp_Publication05202026.R takes the outputs of step 1 plus PV_Metadata.csv and the kelp canopy data, and reproduces all analyses and figures in the manuscript. Key packages: tidyverse, phyloseq, vegan, iNEXT, ranacapa, segmented, MASS, car, multcomp, rstatix, ggpubr, VennDiagram, treemapify, RColorBrewer, wesanderson, gridExtra, here.
Access information
The raw ASV taxonomy table was generated upstream by the Anacapa Toolkit (https://github.com/limey-bean/Anacapa) from the raw sequencing reads archived at NCBI (BioProject PRJNA1468404); Anacapa is not required to view or reuse the deposited files.
