Skip to content
Snippets Groups Projects
Commit 716461c7 authored by Bert Palm's avatar Bert Palm 🎇
Browse files

cleanup setFlags usage

parent 760b0ae5
No related branches found
No related tags found
2 merge requests!193Release 1.4,!188Release 1.4
......@@ -385,20 +385,17 @@ def modelling_mask(data, field, flagger, mode, mask_var=None, season_start=None,
determine wich values NOT TO mask (=wich values are to constitute the "seasons").
"""
data = data.copy()
datcol = data[field]
if mode == 'seasonal':
to_mask = seasonalMask(datcol.index, season_start, season_end, include_bounds)
datcol_idx = data[field].index
if mode == 'seasonal':
to_mask = seasonalMask(datcol_idx, season_start, season_end, include_bounds)
elif mode == 'mask_var':
to_mask = data[mask_var]
to_mask_i = to_mask.index.join(datcol.index, how='inner')
to_mask = to_mask[to_mask_i]
idx = data[mask_var].index.intersection(datcol_idx)
to_mask = data.loc[idx, mask_var]
else:
raise ValueError("Keyword passed as masking mode is unknown ({})!".format(mode))
datcol[to_mask] = np.nan
flags_to_block = pd.Series(np.nan, index=datcol.index[to_mask]).astype(flagger.dtype)
data[field] = datcol
flagger = flagger.setFlags(field, loc=datcol.index[to_mask], flag=flags_to_block, force=True)
data.aloc[to_mask, field] = np.nan
flagger = flagger.setFlags(field, loc=to_mask, flag=np.nan, force=True)
return data, flagger
\ No newline at end of file
......@@ -377,10 +377,8 @@ def sm_flagPrecipitation(
dataseries = dataseries[raise_mask & std_mask]
invalid_indices = prec_count[dataseries.index] <= sensor_depth * sensor_accuracy * soil_porosity
invalid_indices = invalid_indices[invalid_indices]
# set Flags
flagger = flagger.setFlags(field, loc=invalid_indices.index, **kwargs)
flagger = flagger.setFlags(field, loc=invalid_indices, **kwargs)
return data, flagger
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment