diff options
Diffstat (limited to 'metchart/aggregator/misc.py')
-rw-r--r-- | metchart/aggregator/misc.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/metchart/aggregator/misc.py b/metchart/aggregator/misc.py new file mode 100644 index 0000000..6594d0f --- /dev/null +++ b/metchart/aggregator/misc.py @@ -0,0 +1,23 @@ +import os +import numpy as np +import datetime + +def np_time_convert(dt64, func=datetime.datetime.utcfromtimestamp): + unix_epoch = np.datetime64(0, 's') + one_second = np.timedelta64(1, 's') + seconds_since_epoch = (dt64 - unix_epoch) / one_second + + return func(seconds_since_epoch) + +def np_time_convert_offset(init, step): + return np_time_convert(init) + np_time_convert(step, func=lambda x: datetime.timedelta(seconds=x)) + +def np_time_list_convert_offset(init, steps): + return list(map(lambda x: np_time_convert_offset(init, x), steps)) + +def create_output_dir(path, clear=False): + if not os.path.exists(path): + os.makedirs(path) + elif clear: + raise Exception('clear not implemented') + |