Deltares-research / kenmerkendewaarden

Derive indicators from waterlevel measurements
https://deltares-research.github.io/kenmerkendewaarden/
GNU General Public License v3.0
2 stars 0 forks source link

Inconsistent lengths between `compute_actual_counts` and `compute_expected_counts` in case of all-nan year/month #83

Closed veenstrajelmer closed 3 months ago

veenstrajelmer commented 3 months ago

The below code raises "ValueError: Can only compare identically-labeled Series objects" because compute_actual_counts() only returns years for which there are no nans, so will have different length than expected counts if there is an all-nan year.

import kenmerkendewaarden as kw
import numpy as np
import hatyan

file_dia_ts = r"c:\DATA\kenmerkendewaarden\tests\testdata\HOEK_KW.dia"
df_meas = hatyan.read_dia(file_dia_ts)
df_meas_2010_2014 = df_meas.loc["2010":"2014"]

# create dataset with a gap
df_meas_withgap = df_meas_2010_2014.copy() # copy to prevent altering the original dataset
df_meas_withgap.loc["2012", "values"] = np.nan
df_meas_withgap.loc["2012", "qualitycode"] = 99

slotgemiddelden_dict_nogap = kw.calc_wltidalindicators(df_meas_2010_2014, min_coverage=1)
slotgemiddelden_dict_withgap = kw.calc_wltidalindicators(df_meas_withgap, min_coverage=1)

Todo: