Skip to content

Commit 4967bd9

Browse files
datetime pandas fix
Signed-off-by: travis-recurve <[email protected]>
1 parent 542cc28 commit 4967bd9

File tree

1 file changed

+17
-6
lines changed

1 file changed

+17
-6
lines changed

gridmeter/gridmeter/_utils/data.py

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,23 @@
77
import numpy as np
88

99

10+
def is_datetime(x: pd.Series) -> bool:
11+
is_dt = [
12+
pd.api.types.is_datetime64_any_dtype(x),
13+
# pd.api.types.is_datetime64_ns_dtype(x),
14+
# pd.api.types.is_datetime64_dtype(x),
15+
# isinstance(x.dtype, pd.DatetimeTZDtype)
16+
]
17+
18+
return any(is_dt)
19+
20+
1021
class Data:
1122
def __init__(self,
12-
loadshape_df: Optional[pd.DataFrame]= None,
13-
time_series_df: Optional[pd.DataFrame]= None,
14-
features_df: Optional[pd.DataFrame]= None,
15-
settings: Optional[Data_Settings]= None
23+
loadshape_df: Optional[pd.DataFrame] = None,
24+
time_series_df: Optional[pd.DataFrame] = None,
25+
features_df: Optional[pd.DataFrame] = None,
26+
settings: Optional[Data_Settings] = None
1627
):
1728
if settings is None:
1829
if loadshape_df is None:
@@ -380,8 +391,8 @@ def _convert_timeseries_to_loadshape(
380391
raise ValueError(f"Missing columns in time_series_df: {missing_columns}")
381392

382393
# Check that the datetime column is actually of type datetime
383-
if base_df["datetime"].dtypes in _const.datetime_types:
384-
base_df["datetime"] = pd.to_datetime(base_df["datetime"], utc=True)
394+
if is_datetime(base_df["datetime"]):
395+
base_df["datetime"] = pd.to_datetime(base_df["datetime"], utc=True) #TODO: should this be utc=True? should this be applied to all datetime types?
385396
else:
386397
raise ValueError("The 'datetime' column must be of datetime type")
387398

0 commit comments

Comments
 (0)