Mercurial > repos > ecology > xarray_netcdf2netcdf
annotate xarray_netcdf2netcdf.py @ 3:c91c27b63fb2 draft default tip
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit fd8ad4d97db7b1fd3876ff63e14280474e06fdf7
| author | ecology | 
|---|---|
| date | Sun, 31 Jul 2022 21:20:00 +0000 | 
| parents | e87073edecd6 | 
| children | 
| rev | line source | 
|---|---|
| 2 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 1 #!/usr/bin/env python3 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 2 # | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 3 # Apply operations on selected variables | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 4 # - scale | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 5 # one can also select the range of time (for timeseries) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 6 # to apply these operations over the range only | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 7 # when a range of time is selected and when scaling, one | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 8 # can choose to save the entire timeseries or | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 9 # the selected range only. | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 10 # when scaling, one can add additional filters on dimensions | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 11 # (typically used to filter over latitudes and longitudes) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 12 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 13 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 14 import argparse | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 15 import re | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 16 import warnings | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 17 from pathlib import Path | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 18 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 19 import xarray as xr # noqa: E402 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 20 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 21 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 22 class netCDF2netCDF (): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 23 def __init__(self, infile, varname, scale="", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 24 output="output.netcdf", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 25 write_all=False, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 26 keep_attributes=True, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 27 filter_list="", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 28 where_config="", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 29 other="", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 30 sel=False, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 31 drop=False, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 32 verbose=False): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 33 self.drop = drop | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 34 if Path(where_config).exists(): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 35 f = open(where_config) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 36 self.where = f.read().replace("\n", "") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 37 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 38 self.where = "" | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 39 self.other = other | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 40 self.sel = sel | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 41 li = list(infile.split(",")) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 42 if len(li) > 1: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 43 self.infile = li | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 44 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 45 self.infile = infile | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 46 self.verbose = verbose | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 47 if varname == 'None' or varname is None: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 48 self.varname = varname | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 49 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 50 li = list(varname.split(",")) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 51 self.varname = li | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 52 self.write_all = write_all | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 53 self.keep_attributes = keep_attributes | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 54 if self.keep_attributes: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 55 xr.set_options(keep_attrs=True) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 56 self.filter = filter_list | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 57 self.selection = {} | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 58 self.method = {} | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 59 if scale == "" or scale is None: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 60 self.scale = 1 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 61 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 62 self.scale = float(scale) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 63 if output is None: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 64 self.output = "output.netcdf" | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 65 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 66 self.output = output | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 67 # initialization | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 68 self.dset = None | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 69 self.subset = None | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 70 if self.verbose: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 71 print("infile: ", self.infile) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 72 print("varname: ", self.varname) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 73 print("filter_list: ", self.filter) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 74 print("scale: ", self.scale) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 75 print("write_all: ", self.write_all) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 76 print("keep_attributes: ", self.keep_attributes) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 77 print("sel: ", self.sel) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 78 print("output: ", self.output) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 79 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 80 def apply_selection(self): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 81 self.dset = self.ds | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 82 for key in self.selection: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 83 if 'slice' in str(self.selection[key]): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 84 self.dset = self.dset.sel( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 85 {key: self.selection[key]} | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 86 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 87 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 88 self.dset = self.dset.sel( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 89 {key: self.selection[key]}, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 90 method=self.method[key] | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 91 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 92 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 93 def dimension_selection(self, single_filter): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 94 split_filter = single_filter.split('#') | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 95 dimension_varname = split_filter[0] | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 96 op = split_filter[1] | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 97 if self.sel: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 98 ll = float(split_filter[2]) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 99 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 100 ll = int(split_filter[2]) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 101 if (op == 'sl'): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 102 if self.sel: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 103 rl = float(split_filter[3]) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 104 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 105 rl = int(split_filter[3]) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 106 self.selection[dimension_varname] = slice(ll, rl) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 107 elif (op == 'to'): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 108 self.selection[dimension_varname] = slice(None, ll) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 109 elif (op == 'from'): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 110 self.selection[dimension_varname] = slice(ll, None) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 111 elif (op == 'is'): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 112 self.selection[dimension_varname] = ll | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 113 if self.sel: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 114 rl = split_filter[3] | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 115 if 'None' in rl: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 116 self.method[dimension_varname] = None | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 117 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 118 self.method[dimension_varname] = rl | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 119 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 120 def filter_selection(self): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 121 for single_filter in self.filter: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 122 self.dimension_selection(single_filter) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 123 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 124 if self.sel: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 125 self.apply_selection() | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 126 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 127 self.dset = \ | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 128 self.ds.isel(self.selection) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 129 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 130 if self.varname != 'None' and self.varname is not None: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 131 for var in self.varname: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 132 self.dset[var] = \ | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 133 self.dset[var]*self.scale | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 134 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 135 def compute(self): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 136 if self.dset is None: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 137 if type(self.infile) is list: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 138 self.ds = xr.open_mfdataset(self.infile) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 139 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 140 self.ds = xr.open_dataset(self.infile) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 141 if self.where != "": | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 142 if self.drop: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 143 if self.verbose: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 144 print("Where with drop=True") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 145 self.ds = self.ds.where( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 146 self.eval_where(self.where), | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 147 drop=True | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 148 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 149 elif self.other is not None and self.other != "": | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 150 if self.verbose: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 151 print("Where with other=", float(self.other)) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 152 self.ds = self.ds.where( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 153 self.eval_where(self.where), | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 154 other=float(self.other) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 155 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 156 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 157 self.ds = self.ds.where( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 158 self.eval_where(self.where) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 159 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 160 self.filter_selection() | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 161 if self.verbose: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 162 print(self.selection) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 163 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 164 def save(self): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 165 if self.varname != 'None' and \ | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 166 self.varname is not None and \ | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 167 not self.write_all: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 168 self.dset[self.varname].to_netcdf(self.output) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 169 else: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 170 self.dset.to_netcdf(self.output) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 171 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 172 def is_float(self, element) -> bool: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 173 try: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 174 float(element) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 175 return True | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 176 except ValueError: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 177 return False | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 178 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 179 def eval_where(self, where_condition): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 180 eval_cond = None | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 181 list_names = list(set( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 182 list(self.ds.keys()) + | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 183 list(self.ds.coords.keys())) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 184 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 185 wcond = where_condition | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 186 check_cond = where_condition | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 187 for var in list_names: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 188 wcond = wcond.replace(var, ' self.ds.' + var + ' ') | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 189 check_cond = check_cond.replace(var, '') | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 190 to_remove = "[><=&|()]" | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 191 check_cond = re.sub(to_remove, "", check_cond).replace("!", "") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 192 check_cond = re.sub(' +', ' ', check_cond).strip() | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 193 list_flt = check_cond.split(" ") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 194 no_convert = False | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 195 for num in list_flt: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 196 if not self.is_float(num): | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 197 no_convert = True | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 198 if not no_convert: | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 199 eval_cond = eval(wcond) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 200 return eval_cond | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 201 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 202 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 203 if __name__ == '__main__': | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 204 warnings.filterwarnings("ignore") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 205 parser = argparse.ArgumentParser() | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 206 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 207 'input', | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 208 help='input filename in netCDF format' | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 209 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 210 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 211 'varname', | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 212 help='Specify which variable to plot (case sensitive)' | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 213 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 214 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 215 '--filter', | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 216 nargs="*", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 217 help='Filter list variable#operator#value_s#value_e' | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 218 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 219 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 220 '--where', | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 221 help='filename with where condition to be evaluated' | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 222 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 223 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 224 '--output', | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 225 help='Output filename to store the resulting netCDF file' | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 226 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 227 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 228 '--scale', | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 229 help='scale factor to apply to selection (float)' | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 230 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 231 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 232 '--other', | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 233 help='Value to use for locations where condition is False (float)' | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 234 ) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 235 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 236 "--write_all", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 237 help="write all data to netCDF", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 238 action="store_true") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 239 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 240 "--keep_attributes", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 241 help="Keep all attributes", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 242 action="store_true") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 243 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 244 "-v", "--verbose", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 245 help="switch on verbose mode", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 246 action="store_true") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 247 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 248 "--selection", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 249 help="select by values", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 250 action="store_true") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 251 parser.add_argument( | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 252 "--drop", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 253 help="drop values where condition is not met", | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 254 action="store_true") | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 255 args = parser.parse_args() | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 256 | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 257 print("args.selection", args.selection) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 258 dset = netCDF2netCDF(infile=args.input, varname=args.varname, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 259 scale=args.scale, output=args.output, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 260 write_all=args.write_all, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 261 sel=args.selection, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 262 keep_attributes=args.keep_attributes, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 263 filter_list=args.filter, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 264 where_config=args.where, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 265 drop=args.drop, other=args.other, | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 266 verbose=args.verbose) | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 267 dset.compute() | 
| 
e87073edecd6
"planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/data_manipulation/xarray/ commit 2166974df82f97557b082a9e55135098e61640c4"
 ecology parents: 
0diff
changeset | 268 dset.save() | 
