diff --git a/pyhecdss/__init__.py b/pyhecdss/__init__.py index b4f1427..2a867d8 100644 --- a/pyhecdss/__init__.py +++ b/pyhecdss/__init__.py @@ -1,4 +1,4 @@ __author__ = """Nicky Sandhu""" __email__ = 'psandhu@water.ca.gov' -__version__ = "0.2.9" +__version__ = "0.3.0" from .pyhecdss import * diff --git a/pyhecdss/pyhecdss.py b/pyhecdss/pyhecdss.py index fc1bb2c..4f39255 100755 --- a/pyhecdss/pyhecdss.py +++ b/pyhecdss/pyhecdss.py @@ -242,8 +242,11 @@ def m2ihm(self, minute): def parse_pathname_epart(self, pathname): return pathname.split('/')[1:7][4] - def _number_between(startDateStr, endDateStr, delta=pd.to_timedelta(1, 'Y')): - return (pd.to_datetime(endDateStr)-pd.to_datetime(startDateStr))/delta + def _number_between(startDateStr, endDateStr, delta=np.timedelta64(1, 'D')): + """ + This is just a guess at number of values to be read so going over is ok. + """ + return round((pd.to_datetime(endDateStr)-pd.to_datetime(startDateStr))/delta+1) def _get_timedelta_unit(epart): if 'YEAR' in epart: @@ -441,7 +444,7 @@ def read_its(self, pathname, startDateStr=None, endDateStr=None, guess_vals_per_ ietime = istime = 0 # guess how many values to be read based on e part approximation ktvals = DSSFile._number_between(startDateStr, endDateStr, - pd.to_timedelta(1, unit=DSSFile._get_timedelta_unit(epart))) + np.timedelta64(1, DSSFile._get_timedelta_unit(epart))) ktvals = guess_vals_per_block*int(ktvals) kdvals = ktvals itimes = np.zeros(ktvals, 'i')