Skip to main content

A python library for Argo data beginners and experts

Project description

argopy logo Argo data python library

build codecov Requirements Status

argopy is a python library that aims to ease Argo data access, visualisation and manipulation for regular users as well as Argo experts and operators.

Several python packages exist: we are currently in the process of analysing how to merge these libraries toward a single powerfull tool.
List your tool here !

Click here to badge and play with argopy before you even install it (thanks Pangeo).

Install

Since this is a library in active development, use direct install from this repo to benefit from the last version:

pip install git+http://github.com/euroargodev/argopy.git@master

The argopy library should work under all OS (Linux, Mac and Windows) and with python versions 3.6, 3.7 and 3.8.

Usage

Fetching Argo Data

Init the default data fetcher like:

from argopy import DataFetcher as ArgoDataFetcher
argo_loader = ArgoDataFetcher()

and then, request data for a specific space/time domain:

ds = argo_loader.region([-85,-45,10.,20.,0,10.]).to_xarray()
ds = argo_loader.region([-85,-45,10.,20.,0,1000.,'2012-01','2012-12']).to_xarray()

for profiles of a given float:

ds = argo_loader.profile(6902746, 34).to_xarray()
ds = argo_loader.profile(6902746, np.arange(12,45)).to_xarray()
ds = argo_loader.profile(6902746, [1,12]).to_xarray()

or for one or a collection of floats:

ds = argo_loader.float(6902746).to_xarray()
ds = argo_loader.float([6902746, 6902747, 6902757, 6902766]).to_xarray()

Two Argo data fetchers are available.

  1. The Ifremer erddap (recommended, but requires internet connection):
    argo_loader = ArgoDataFetcher(backend='erddap')
    ds = argo_loader.profile(6902746, 34).to_xarray()
    
  2. your own local copy of the GDAC ftp (offline access possible, but more limited than the erddap).
    argo_loader = ArgoDataFetcher(backend='localftp', path_ftp='/path/to/your/copy/of/Argo/ftp/dac')
    ds = argo_loader.float(6902746).to_xarray()
    

Data manipulation

Data are returned as a collection of measurements. If you want to convert them into a collection of profiles, you can use the xarray accessor named argo:

from argopy import DataFetcher as ArgoDataFetcher
ds = ArgoDataFetcher().float(5903248).to_xarray() # Dimensions: (N_POINTS: 25656)
ds = ds.argo.point2profile() # Dimensions: (N_LEVELS: 71, N_PROF: 368)

By default fetched data are returned in memory as xarray.DataSet. From there, it is easy to convert it to other formats like a Pandas dataframe:

ds = ArgoDataFetcher().profile(6902746, 34).to_xarray()
df = ds.to_dataframe()

or to export it to files:

ds = argo_loader.region([-85,-45,10.,20.,0,100.]).to_xarray()
ds.to_netcdf('my_selection.nc')
# or by profiles:
ds.argo.point2profile().to_netcdf('my_selection.nc')

Development roadmap

We aim to provide high level helper methods to load Argo data and meta-data from:

We also aim to provide high level helper methods to visualise and plot Argo data and meta-data:

  • Map with trajectories
  • Waterfall plots
  • T/S diagram
  • etc !

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

argopy-0.1.1.tar.gz (26.0 kB view details)

Uploaded Source

Built Distributions

argopy-0.1.1-py3.6.egg (31.8 kB view details)

Uploaded Source

argopy-0.1.1-py3-none-any.whl (36.4 kB view details)

Uploaded Python 3

File details

Details for the file argopy-0.1.1.tar.gz.

File metadata

  • Download URL: argopy-0.1.1.tar.gz
  • Upload date:
  • Size: 26.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0.post20200106 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.7

File hashes

Hashes for argopy-0.1.1.tar.gz
Algorithm Hash digest
SHA256 9e76e83adfe4f5da89827d19cac4852a95ddd9750185bdcf2f74b97504822d4d
MD5 e06dd55823b3181300ea4dd4d338043c
BLAKE2b-256 580a683bf651a8b5926984a5d4ee7b6f596acf0cd5fdf78ffe781d9123a0496a

See more details on using hashes here.

File details

Details for the file argopy-0.1.1-py3.6.egg.

File metadata

  • Download URL: argopy-0.1.1-py3.6.egg
  • Upload date:
  • Size: 31.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0.post20200106 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.7

File hashes

Hashes for argopy-0.1.1-py3.6.egg
Algorithm Hash digest
SHA256 1b59b87863c25ee659e6b07d27c0978086f57b4ecb5829bbe14e0dae625ec9fb
MD5 c98fa78fbcf055de917345e68578b88f
BLAKE2b-256 df04ad2c89972772baf4f35a619763825d500d93d49d73830dbc9ec5c1bf7d82

See more details on using hashes here.

File details

Details for the file argopy-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: argopy-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 36.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0.post20200106 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.7

File hashes

Hashes for argopy-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 12d182bf545ce7a12985ef2cb7df88e8ece51708ade9998ebbf37342f2dc3b35
MD5 4483d82cdc4c35e0fdaf4f7357bc7fcb
BLAKE2b-256 92adf4af62f938736b48dc64341634b3fc2721dbb80acab9282697f22ae1f211

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page