Fetching Argo data

Fetching Argo data#

To fetch (i.e. access, download, format) Argo data, argopy provides the DataFetcher class. In this section of the documentation, we explain how to use it.

Several DataFetcher arguments exist to help you select the dataset, the data source and the user mode the most suited for your applications; and also to improve performances.

You define the selection of data you want to fetch with one of the DataFetcher methods: region, float or profile.

These methods and arguments are all explained in the following sections:

In a nutshell#

2 lines to download Argo data: import and fetch !

In [1]: import argopy

In [2]: ds = argopy.DataFetcher().region([-75, -45, 20, 30, 0, 10, '2011-01', '2011-06']).load().data
In [3]: ds
Out[3]: 
<xarray.Dataset> Size: 120kB
Dimensions:          (N_POINTS: 998)
Coordinates:
    LATITUDE         (N_POINTS) float64 8kB 24.54 24.54 25.04 ... 24.96 24.96
    LONGITUDE        (N_POINTS) float64 8kB -45.14 -45.14 -51.58 ... -50.4 -50.4
    TIME             (N_POINTS) datetime64[ns] 8kB 2011-01-01T11:49:19 ... 20...
  * N_POINTS         (N_POINTS) int64 8kB 0 1 2 3 4 5 ... 993 994 995 996 997
Data variables: (12/15)
    CYCLE_NUMBER     (N_POINTS) int64 8kB 23 23 10 10 10 10 ... 5 2 10 10 38 38
    DATA_MODE        (N_POINTS) <U1 4kB 'D' 'D' 'D' 'D' 'D' ... 'D' 'D' 'D' 'D'
    DIRECTION        (N_POINTS) <U1 4kB 'A' 'A' 'A' 'A' 'A' ... 'A' 'A' 'A' 'A'
    PLATFORM_NUMBER  (N_POINTS) int64 8kB 1901463 1901463 ... 1901463 1901463
    POSITION_QC      (N_POINTS) int64 8kB 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1
    PRES             (N_POINTS) float32 4kB 5.0 10.0 2.0 4.0 ... 9.42 5.0 10.0
    ...               ...
    PSAL_ERROR       (N_POINTS) float32 4kB 0.01 0.01 0.01 ... 0.01091 0.01182
    PSAL_QC          (N_POINTS) int64 8kB 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1
    TEMP             (N_POINTS) float32 4kB 24.08 24.08 24.03 ... 25.1 24.79
    TEMP_ERROR       (N_POINTS) float32 4kB 0.002 0.002 0.002 ... 0.002 0.002
    TEMP_QC          (N_POINTS) int64 8kB 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1
    TIME_QC          (N_POINTS) int64 8kB 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1
Attributes:
    DATA_ID:              ARGO
    DOI:                  http://doi.org/10.17882/42182
    Fetched_from:         erddap.ifremer.fr
    Fetched_by:           docs
    Fetched_date:         2026/07/01
    Fetched_constraints:  [x=-75.00/-45.00; y=20.00/30.00; z=0.0/10.0; t=2011...
    Fetched_uri:          https://erddap.ifremer.fr/erddap/tabledap/ArgoFloat...
    Processing_history:   [PRES,TEMP,PSAL] real-time and adjusted/delayed var...

Workflow explained#

Let’s explain what happened in the single line Argo data fetching above.

Import argopy and create a instance of DataFetcher:

In [4]: import argopy

In [5]: f = argopy.DataFetcher()

In [6]: f
Out[6]: 
<datafetcher.erddap> 'No access point initialised'
Available access points: float, profile, region
🏊 User mode: standard
🟑+πŸ”΅ Dataset: phy
πŸŒ₯  Performances: cache=False, parallel=False

By default, argopy will load the phy dataset, in standard user mode from the erddap data source.