Mercurial > repos > ecology > xarray_import_data
annotate xarray_import_data.py @ 0:f1b185fc409a draft default tip
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
| author | ecology | 
|---|---|
| date | Thu, 14 Aug 2025 08:54:07 +0000 | 
| parents | |
| children | 
| rev | line source | 
|---|---|
| 
0
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
1 """Import OPeNDAP dataset using xarray to a netCDF file.""" | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
2 | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
3 import argparse | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
4 | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
5 import xarray as xr | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
6 | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
7 parser = argparse.ArgumentParser() | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
8 | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
9 parser.add_argument( | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
10 "opendap_url", | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
11 help=( | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
12 "A valid OPeNDAP URL, also see " | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
13 "https://docs.xarray.dev/en/stable/user-guide/io.html#opendap" | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
14 ), | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
15 ) | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
16 parser.add_argument( | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
17 "decode_times", | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
18 type=lambda x: x == "true", | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
19 help='If time should be decoded, e.g. "True" or "False"', | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
20 ) | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
21 parser.add_argument( | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
22 "decode_cf", | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
23 type=lambda x: x == "true", | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
24 help=( | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
25 "Whether to decode according to " | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
26 'CF conventions e.g. "true" or "false"' | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
27 ), | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
28 ) | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
29 parser.add_argument("output_dataset", help="netCDF file to output") | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
30 args = parser.parse_args() | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
31 | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
32 xr.open_dataset( | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
33 args.opendap_url.strip(), | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
34 decode_cf=args.decode_cf, | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
35 decode_times=args.decode_times, | 
| 
 
f1b185fc409a
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/xarray_import_data commit 99843e9b86bfb355026559d36e29ed5a262aa9b0
 
ecology 
parents:  
diff
changeset
 | 
36 ).to_netcdf(args.output_dataset) | 
