Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .github/workflows/python-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,3 @@ jobs:
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest
run: |
pytest --cov src/py_eddy_tracker
2 changes: 2 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ Fixed
Added
^^^^^

- Allow to replace mask by isnan method to manage nan data instead of masked data

[3.5.0] - 2021-06-22
--------------------

Expand Down
16 changes: 15 additions & 1 deletion src/py_eddy_tracker/dataset/grid.py
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,7 @@ class GridDataset(object):
"global_attrs",
"vars",
"contours",
"nan_mask",
)

GRAVITY = 9.807
Expand All @@ -267,7 +268,14 @@ class GridDataset(object):
N = 1

def __init__(
self, filename, x_name, y_name, centered=None, indexs=None, unset=False
self,
filename,
x_name,
y_name,
centered=None,
indexs=None,
unset=False,
nan_masking=False,
):
"""
:param str filename: Filename to load
Expand All @@ -276,6 +284,7 @@ def __init__(
:param bool,None centered: Allow to know how coordinates could be used with pixel
:param dict indexs: A dictionary that sets indexes to use for non-coordinate dimensions
:param bool unset: Set to True to create an empty grid object without file
:param bool nan_masking: Set to True to replace data.mask with isnan method result
"""
self.dimensions = None
self.variables_description = None
Expand All @@ -286,6 +295,7 @@ def __init__(
self.y_bounds = None
self.x_dim = None
self.y_dim = None
self.nan_mask = nan_masking
self.centered = centered
self.contours = None
self.filename = filename
Expand Down Expand Up @@ -519,6 +529,10 @@ def grid(self, varname, indexs=None):
if i_x > i_y:
self.variables_description[varname]["infos"]["transpose"] = True
self.vars[varname] = self.vars[varname].T
if self.nan_mask:
self.vars[varname] = ma.array(
self.vars[varname], mask=isnan(self.vars[varname]),
)
if not hasattr(self.vars[varname], "mask"):
self.vars[varname] = ma.array(
self.vars[varname],
Expand Down