Skip to content

Commit 11d1f61

Browse files
committed
fix for issue 15: units 'M' and 'Y' no longer supported
1 parent 076dbd5 commit 11d1f61

2 files changed

Lines changed: 7 additions & 4 deletions

File tree

pyhecdss/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
__author__ = """Nicky Sandhu"""
22
__email__ = 'psandhu@water.ca.gov'
3-
__version__ = "0.2.9"
3+
__version__ = "0.3.0"
44
from .pyhecdss import *

pyhecdss/pyhecdss.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -242,8 +242,11 @@ def m2ihm(self, minute):
242242
def parse_pathname_epart(self, pathname):
243243
return pathname.split('/')[1:7][4]
244244

245-
def _number_between(startDateStr, endDateStr, delta=pd.to_timedelta(1, 'Y')):
246-
return (pd.to_datetime(endDateStr)-pd.to_datetime(startDateStr))/delta
245+
def _number_between(startDateStr, endDateStr, delta=np.timedelta64(1, 'D')):
246+
"""
247+
This is just a guess at number of values to be read so going over is ok.
248+
"""
249+
return round((pd.to_datetime(endDateStr)-pd.to_datetime(startDateStr))/delta+1)
247250

248251
def _get_timedelta_unit(epart):
249252
if 'YEAR' in epart:
@@ -441,7 +444,7 @@ def read_its(self, pathname, startDateStr=None, endDateStr=None, guess_vals_per_
441444
ietime = istime = 0
442445
# guess how many values to be read based on e part approximation
443446
ktvals = DSSFile._number_between(startDateStr, endDateStr,
444-
pd.to_timedelta(1, unit=DSSFile._get_timedelta_unit(epart)))
447+
np.timedelta64(1, DSSFile._get_timedelta_unit(epart)))
445448
ktvals = guess_vals_per_block*int(ktvals)
446449
kdvals = ktvals
447450
itimes = np.zeros(ktvals, 'i')

0 commit comments

Comments
 (0)