datetime_format_data_check

Module Contents

Classes Summary

DateTimeFormatDataCheck

Checks if the datetime column has equally spaced intervals and is monotonically increasing or decreasing in order

Contents

class evalml.data_checks.datetime_format_data_check.DateTimeFormatDataCheck(datetime_column='index')[source]

Checks if the datetime column has equally spaced intervals and is monotonically increasing or decreasing in order to be supported by time series estimators.

Parameters

datetime_column (str, int) – The name of the datetime column. If the datetime values are in the index, then pass “index”.

Methods

name

Returns a name describing the data check.

validate

Checks if the target data has equal intervals and is sorted.

name(cls)

Returns a name describing the data check.

validate(self, X, y)[source]

Checks if the target data has equal intervals and is sorted.

Parameters
  • X (pd.DataFrame, np.ndarray) – Features.

  • y (pd.Series, np.ndarray) – Target data.

Returns

List with DataCheckErrors if unequal intervals are found in the datetime column.

Return type

dict (DataCheckError)

Example

>>> from pandas as pd
>>> X = pd.DataFrame(pd.date_range("January 1, 2021", periods=8), columns=["dates"])
>>> y = pd.Series([1, 2, 4, 2, 1, 2, 3, 1])
>>> X.iloc[7] = "January 9, 2021"
>>> datetime_format_check = DateTimeFormatDataCheck()
>>> assert datetime_format_check.validate(X, y) == {"errors": [{"message": "No frequency could be detected in dates, possibly due to uneven intervals.",                                                                    "data_check_name": "EqualIntervalDataCheck",                                                                    "level": "error",                                                                    "code": "DATETIME_HAS_UNEVEN_INTERVALS",                                                                    "details": {}}],                                                        "warnings": [],                                                        "actions": []}