aboutsummaryrefslogtreecommitdiff
path: root/metchart/aggregator/misc.py
diff options
context:
space:
mode:
authorGravatar Jonas Gunz <himself@jonasgunz.de> 2024-10-14 02:23:10 +0200
committerGravatar Jonas Gunz <himself@jonasgunz.de> 2024-10-14 02:23:10 +0200
commit663edde231af9ad4a782c5438027ef7f839806ea (patch)
tree3e0d6745e5b1c633a76e404a56b734caddcf6b37 /metchart/aggregator/misc.py
parent9e5f1d17a4b0165bd4a3218ca24a159012ea49bd (diff)
downloadmeteo_toolbox-663edde231af9ad4a782c5438027ef7f839806ea.tar.gz
package with python
Diffstat (limited to 'metchart/aggregator/misc.py')
-rw-r--r--metchart/aggregator/misc.py23
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')
+