A data frame mapping 138 Oklahoma lakes to their
EPA Level III ecoregion, with monitoring coverage statistics from a
1998-2023 snapshot of publicly available state lake monitoring
records. Useful for quickly resolving an ecoregion for use with
coefficients = "oklahoma", or for understanding which lakes have
sufficient monitoring history to support empirical analysis.
Format
A data frame with one row per lake and the following columns:
- lake_name
Character. Lake name as it appeared in source monitoring records.
- eco_l3_code
Character. EPA Level III ecoregion numeric code (as string,
US_L3CODE), e.g."29"for Cross Timbers.- eco_l3_name
Character. EPA Level III ecoregion name (
US_L3NAME).- n_sites_total
Integer. Total number of monitoring stations on this lake in the source dataset.
- n_sites_tier1
Integer. Number of stations with at least 3 years each of TP, chlorophyll-a, and Secchi data (the core calibration parameters). Always
<= n_sites_total.- latitude
Numeric. Approximate lake centroid latitude (WGS84 decimal degrees), computed as the mean of monitoring station coordinates.
- longitude
Numeric. Approximate lake centroid longitude.
- max_yrs_tp
Integer. Maximum number of calendar years (in the 1998-2023 window) with any reported total phosphorus data at any station on the lake.
- max_yrs_chla
Integer. Same, for chlorophyll-a.
- max_yrs_secchi
Integer. Same, for Secchi depth.
- max_yrs_tn
Integer. Same, for total nitrogen.
Source
Compiled from publicly available Oklahoma lake monitoring records
(1998-2023). Ecoregion polygons from Griffith, G.E. et al. (2004),
Ecoregions of Oklahoma, U.S. Geological Survey, Reston, Virginia.
See data-raw/ok_ecoregion_assignment.R in the package source for
the assignment script.
Coverage statistics caveats
The n_sites_* and max_yrs_* columns reflect a 1998-2023 snapshot
taken when the calibration was performed. They are not updated
automatically with new monitoring data. Treat them as a useful
starting point for assessing data availability, not as a current
inventory. For up-to-date monitoring coverage, query the source
monitoring system directly.
Ecoregion assignment
Ecoregion assignment uses EPA Level III boundaries (Griffith et al.
2004) applied by spatial join of each lake's monitoring-station
coordinates against the bundled ecoregion polygons; each lake takes
the ecoregion of the majority of its stations, with a
nearest-feature fallback for stations just outside a polygon edge.
All lakes in the current dataset are assigned an ecoregion. Lakes in
ecoregions without an ecoregion-specific coefficient set use the
statewide pooled regressions when modelling with
coefficients = "oklahoma".
Examples
# All lakes in a specific ecoregion
head(ok_lake_ecoregions[ok_lake_ecoregions$eco_l3_name == "Cross Timbers", ])
#> lake_name eco_l3_code eco_l3_name n_sites_total n_sites_tier1
#> 60 Arbuckle Reservoir 29 Cross Timbers 5 5
#> 61 Arcadia Lake 29 Cross Timbers 5 5
#> 62 Ardmore City Lake 29 Cross Timbers 3 3
#> 63 Bellcow Lake 29 Cross Timbers 5 3
#> 64 Birch Lake 29 Cross Timbers 5 4
#> 65 Bixhoma Lake 29 Cross Timbers 3 3
#> latitude longitude max_yrs_tp max_yrs_chla max_yrs_secchi max_yrs_tn
#> 60 34.44469 -97.01571 13 12 10 13
#> 61 35.63452 -97.38414 17 15 11 18
#> 62 34.22244 -97.15394 9 7 5 9
#> 63 35.73656 -96.93671 12 11 7 12
#> 64 36.52341 -96.18391 12 12 8 14
#> 65 35.89234 -95.79636 9 4 5 9
# Lakes with the longest monitoring history
top_monitored <- ok_lake_ecoregions[
order(-ok_lake_ecoregions$max_yrs_tp), ][1:10, ]
top_monitored[, c("lake_name", "eco_l3_name", "max_yrs_tp")]
#> lake_name eco_l3_name max_yrs_tp
#> 92 Lake Thunderbird Cross Timbers 24
#> 29 Fort Supply Lake Central Great Plains 17
#> 61 Arcadia Lake Cross Timbers 17
#> 133 Tenkiller Ferry Lake Ozark Highlands 17
#> 5 Lake McAlester Arkansas Valley 16
#> 82 Keystone Lake Cross Timbers 16
#> 87 Lake McMurtry Cross Timbers 16
#> 129 Grand Lake Ozark Highlands 16
#> 28 Fort Cobb Reservoir Central Great Plains 15
#> 30 Foss Reservoir Central Great Plains 15