CalCOFI.io CalCOFI.io open data ecosystem

Oxygen sensor 2, cruise-corrected

DO sensor 2 cruise-corrected

ml/Lkey oxygen_ml_l_2_cruise_corrNERC P01 DOXYZZXXP06 units UMLLseries oxygen_ml_l_2_cruise_corr

CalCOFI holds 324,202 values of it from 4,732 sampling events in one dataset, 1999–2026, from the surface to 3,630 m.R Below the mixed layer off Southern California oxygen has fallen since the 1980s and the hypoxic boundary has risen toward the shelf, squeezing the habitat of fish and invertebrates.C

324,202
values
32
flagged
i
32 of these 324,202 values (under 0.1 %) are flagged by their provider as questionable or bad. The Explorer, the climatology and its anomalies leave them out; do the same when you read the data yourself (cc_qual_ok_sql() in calcofi4r, qual_ok_sql() in calcofi4py).
1999–2026
years
1
dataset
1–3,630 m
depth
10 of 12
months
O2 · dioxygen · 31.998 g/mol · CHEBI:15379Concentration of dissolved oxygen per unit volume of the water column. Oxygen may be expressed in terms of mass, volume or quantity of substance.

Measured in 1 dataset
i

One row per series, one cell per year, darker with more values — the same strip the front door draws per dataset and a species page draws per taxon. Each row is one dataset's own measurement_type; the label is written once, in the title above.

  • 324,202 values · 4,732 sampling events · 1999–2026 · 1–3,630 m · 107 grid cells · 64 cruises
    series oxygen_ml_l_2_cruise_corr · source column ox2_cruise_corr · flag column ox2_cruise_corr_q 32 flagged

Explorera depth section vs normaldb-queryERDDAPThis page as JSON R · Python · Parquet

Every way in 8 ways · ERDDAP · Parquet · R · Python · JSON

Read from measurements.json of release v2026.10.21, written at release by calcofi4db::build_measurements_catalog() beside taxa.json. The catalog's index is /measurements/; the JSON-LD on this page is a schema.org/DefinedTerm in the NERC P01 term set with a PropertyValue per series.

ExplorerExplorer · a depth section vs normaldb-query
ERDDAP · CTD Cast FilesCalCOFI's own server, the CTD Cast Files table constrained to this series
https://erddap.calcofi.io/erddap/tabledap/calcofi_ctd-cast.html?&measurement_type=%22oxygen_ml_l_2_cruise_corr%22
The structure O2 dioxygen
O2 dioxygen CHEBI:15379 · 31.998 g/mol · the_thing

RDKit 2026.03.6 from the ChEBI molfile, in the page’s ink · CC BY 4.0. ChEBI’s roles are never shown.

How it is measured Sea-Bird SBE 43 oxygen sensor
CTD sensor
CTD Cast Files · CTD sensor
Sea-Bird SBE 43 oxygen sensor

A Sea-Bird SBE 43 membrane oxygen sensor on the pumped CTD line, soaked at 10 m for a few minutes before the downcast so its temperature-dependent response stabilises; the raw sensor reading is then corrected against the Winkler-titrated bottle oxygens at that station (or averaged over the cruise). (calcofi.org CTD FAQ circa 2020)

flag ox2_cruise_corr_q32 flagged
CTD FAQ circa 2020 on calcofi.org ↗
Why it matters 7 ways to say it · EOV Oxygen
Essential Ocean Variable
Oxygen

the GOOS specification sheet for this Essential Ocean Variable lists it, and asks

GOOS asks

  • How large are the ocean’s “dead zones” and how fast are they changing?
  • Is the biomass of the ocean changing?

GOOS specification sheet ↗ · quoted, not copied

other ways to say why · 6
  • authored Oxygen is the balance of what the ocean takes in at the surface and what animals and bacteria use below; a warmer ocean holds less and mixes less, so it is losing oxygen. needs a citation before it can be the pick
  • authored Warming thins the oxygen the surface layer can hold, and the upper ocean has been losing it for decades across the North Pacific, not only here. needs a citation before it can be the pick
  • GOOS asks How large are the ocean’s “dead zones” and how fast are they changing? source
  • GOOS asks Is the biomass of the ocean changing? source
  • Wikipedia Hypoxia (environmental) source
  • Wikipedia Ocean deoxygenation is the reduction of the oxygen content in different parts of the ocean due to human activities. There are two areas where this occurs. Ocean deoxygenation · CC BY-SA 4.0 · rev. 1354922617
The record’s own history no climatology to depart from

Each year against the normal
i

The release builds no climatology for this measurement, so there is no normal to draw a departure from.

Units and range ml/L · 0 … 15 declared · 32 flagged

ml/L · P06 units UMLL

bounds0 … 15 ml/Lobserved0.0018 … 14.63 ml/Lflagged32baselineclimatology ✓
details
bounds
The registry declares 0 … 15 ml/L for oxygen_ml_l_2_cruise_corr; a value outside it is dropped at the ingest (drop_out_of_bounds()).
observed
CTD Cast Files oxygen_ml_l_2_cruise_corr 0.0018 · median 2.501 · 14.63 ml/L (5th–95th percentile 0.377–5.986)
flags
CTD Cast Files oxygen_ml_l_2_cruise_corr ox2_cruise_corr_q on 32 of 324,202 rows: 8 30 · 9 2; qual_ok keeps 324,170. The codes are this dataset's own vocabulary, uninterpreted.
baseline
A monthly climatology exists for this measurement (the release's climatology table: 1993–2013, dataset × station × the cruise's month × 10 m bin), so the Explorer can draw anomalies against it rather than values.
derivation
Sensor oxygen corrected by regression against the bottle oxygens. Bottle-corrected with ONE regression per cruise, fitted from 4-second-averaged sensor data against all the cruise's bottles (n ~ 1400, fliers omitted).

The familiar scale
i

Bars are each series' 5th–95th percentile, the line its minimum to maximum, the ring its median; the marks are metadata/measurement_scale.csv's, each hovering to its own source.

By depth · by month 1–3,630 m · 10 of 12 months

By depth
i

Values per depth band at the release grain, one thin bar per series. The bands are the record's own (0-10 … 2000+ m).

By month
i

Values per calendar month, one row per series: CalCOFI's quarterly cruises show as peaks in the months the ships sail.

Cite the release, v2026.10.21

Cite the release; each dataset's own citation, licence and DOI are on its page — CTD Cast Files. The Explorer's Share → Cite writes it for the view you make.