# evidently.metrics.data\_drift

## Submodules

## column\_drift\_metric module <a href="#module-evidently.metrics.data_drift.column_drift_metric" id="module-evidently.metrics.data_drift.column_drift_metric"></a>

### class ColumnDriftMetric(column\_name: str, stattest: Optional\[Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]] = None, stattest\_threshold: Optional\[float] = None)

Bases: [`Metric`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.Metric)\[`ColumnDriftMetricResults`]

Calculate drift metric for a column

#### Attributes:

&#x20;    **column\_name : str**

&#x20;    **stattest : Optional\[Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]],** [**StatTest**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)**]]**

&#x20;    **stattest\_threshold : Optional\[float]**

#### Methods:

&#x20;    **calculate(data:** [**InputData**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.InputData)**)**

&#x20;    **get\_parameters()**

### class ColumnDriftMetricRenderer(color\_options: Optional\[[ColorOptions](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)] = None)

Bases: [`MetricRenderer`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/M9iMLhGad2yNU1Kd04Dv#evidently.renderers.base_renderer.MetricRenderer)

#### Attributes:

&#x20;    **color\_options :** [**ColorOptions**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)

#### Methods:

&#x20;    **render\_html(obj: ColumnDriftMetric)**

&#x20;    **render\_json(obj: ColumnDriftMetric)**

### class ColumnDriftMetricResults(column\_name: str, column\_type: str, stattest\_name: str, stattest\_threshold: float, drift\_score: Union\[float, int], drift\_detected: bool, current\_distribution: [Distribution](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/9O7LQ1v4Gn98SSrnqpix#evidently.utils.visualizations.Distribution), reference\_distribution: [Distribution](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/9O7LQ1v4Gn98SSrnqpix#evidently.utils.visualizations.Distribution), current\_scatter: Optional\[Dict\[str, list]], x\_name: Optional\[str], plot\_shape: Optional\[Dict\[str, float]])

Bases: `object`

#### Attributes:

&#x20;    **column\_name : str**

&#x20;    **column\_type : str**

&#x20;    **current\_distribution :** [**Distribution**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/9O7LQ1v4Gn98SSrnqpix#evidently.utils.visualizations.Distribution)

&#x20;    **current\_scatter : Optional\[Dict\[str, list]]**

&#x20;    **drift\_detected : bool**

&#x20;    **drift\_score : Union\[float, int]**

&#x20;    **plot\_shape : Optional\[Dict\[str, float]]**

&#x20;    **reference\_distribution :** [**Distribution**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/9O7LQ1v4Gn98SSrnqpix#evidently.utils.visualizations.Distribution)

&#x20;    **stattest\_name : str**

&#x20;    **stattest\_threshold : float**

&#x20;    **x\_name : Optional\[str]**

## column\_value\_plot module <a href="#module-evidently.metrics.data_drift.column_value_plot" id="module-evidently.metrics.data_drift.column_value_plot"></a>

### class ColumnValuePlot(column\_name: str)

Bases: [`Metric`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.Metric)\[`ColumnValuePlotResults`]

#### Attributes:

&#x20;    **column\_name : str**

#### Methods:

&#x20;    **calculate(data:** [**InputData**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.InputData)**)**

### class ColumnValuePlotRenderer(color\_options: Optional\[[ColorOptions](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)] = None)

Bases: [`MetricRenderer`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/M9iMLhGad2yNU1Kd04Dv#evidently.renderers.base_renderer.MetricRenderer)

#### Attributes:

&#x20;    **color\_options :** [**ColorOptions**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)

#### Methods:

&#x20;    **render\_html(obj: ColumnValuePlot)**

&#x20;    **render\_json(obj: ColumnValuePlot)**

### class ColumnValuePlotResults(column\_name: str, datetime\_column\_name: Optional\[str], current\_scatter: pandas.core.frame.DataFrame, reference\_scatter: pandas.core.frame.DataFrame)

Bases: `object`

#### Attributes:

&#x20;    **column\_name : str**

&#x20;    **current\_scatter : DataFrame**

&#x20;    **datetime\_column\_name : Optional\[str]**

&#x20;    **reference\_scatter : DataFrame**

## data\_drift\_table module <a href="#module-evidently.metrics.data_drift.data_drift_table" id="module-evidently.metrics.data_drift.data_drift_table"></a>

### class DataDriftTable(columns: Optional\[List\[str]] = None, stattest: Optional\[Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]] = None, cat\_stattest: Optional\[Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]] = None, num\_stattest: Optional\[Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]] = None, per\_column\_stattest: Optional\[Dict\[str, Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]]] = None, stattest\_threshold: Optional\[float] = None, cat\_stattest\_threshold: Optional\[float] = None, num\_stattest\_threshold: Optional\[float] = None, per\_column\_stattest\_threshold: Optional\[Dict\[str, float]] = None)

Bases: [`Metric`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.Metric)\[`DataDriftTableResults`]

#### Attributes:

&#x20;    **columns : Optional\[List\[str]]**

&#x20;    **options :** [**DataDriftOptions**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.data_drift.DataDriftOptions)

#### Methods:

&#x20;    **calculate(data:** [**InputData**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.InputData)**)**

&#x20;    **get\_parameters()**

### class DataDriftTableRenderer(color\_options: Optional\[[ColorOptions](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)] = None)

Bases: [`MetricRenderer`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/M9iMLhGad2yNU1Kd04Dv#evidently.renderers.base_renderer.MetricRenderer)

#### Attributes:

&#x20;    **color\_options :** [**ColorOptions**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)

#### Methods:

&#x20;    **render\_html(obj: DataDriftTable)**

&#x20;    **render\_json(obj: DataDriftTable)**

### class DataDriftTableResults(number\_of\_columns: int, number\_of\_drifted\_columns: int, share\_of\_drifted\_columns: float, dataset\_drift: bool, drift\_by\_columns: Dict\[str, [ColumnDataDriftMetrics](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ICxNS1GschXEUCV60dnZ#evidently.calculations.data_drift.ColumnDataDriftMetrics)], dataset\_columns: [DatasetColumns](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/9O7LQ1v4Gn98SSrnqpix#evidently.utils.data_operations.DatasetColumns))

Bases: `object`

#### Attributes:

&#x20;    **dataset\_columns :** [**DatasetColumns**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/9O7LQ1v4Gn98SSrnqpix#evidently.utils.data_operations.DatasetColumns)

&#x20;    **dataset\_drift : bool**

&#x20;    **drift\_by\_columns : Dict\[str,** [**ColumnDataDriftMetrics**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ICxNS1GschXEUCV60dnZ#evidently.calculations.data_drift.ColumnDataDriftMetrics)**]**

&#x20;    **number\_of\_columns : int**

&#x20;    **number\_of\_drifted\_columns : int**

&#x20;    **share\_of\_drifted\_columns : float**

## dataset\_drift\_metric module <a href="#module-evidently.metrics.data_drift.dataset_drift_metric" id="module-evidently.metrics.data_drift.dataset_drift_metric"></a>

### class DataDriftMetricsRenderer(color\_options: Optional\[[ColorOptions](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)] = None)

Bases: [`MetricRenderer`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/M9iMLhGad2yNU1Kd04Dv#evidently.renderers.base_renderer.MetricRenderer)

#### Attributes:

&#x20;    **color\_options :** [**ColorOptions**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)

#### Methods:

&#x20;    **render\_html(obj: DatasetDriftMetric)**

&#x20;    **render\_json(obj: DatasetDriftMetric)**

### class DatasetDriftMetric(columns: Optional\[List\[str]] = None, drift\_share: float = 0.5, stattest: Optional\[Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]] = None, cat\_stattest: Optional\[Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]] = None, num\_stattest: Optional\[Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]] = None, per\_column\_stattest: Optional\[Dict\[str, Union\[str, Callable\[\[Series, Series, str, float], Tuple\[float, bool]], [StatTest](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/Rb3BF2Y7DDvjAuK838aV#evidently.calculations.stattests.registry.StatTest)]]] = None, stattest\_threshold: Optional\[float] = None, cat\_stattest\_threshold: Optional\[float] = None, num\_stattest\_threshold: Optional\[float] = None, per\_column\_stattest\_threshold: Optional\[Dict\[str, float]] = None)

Bases: [`Metric`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.Metric)\[`DatasetDriftMetricResults`]

#### Attributes:

&#x20;    **columns : Optional\[List\[str]]**

&#x20;    **drift\_share : float**

&#x20;    **options :** [**DataDriftOptions**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.data_drift.DataDriftOptions)

#### Methods:

&#x20;    **calculate(data:** [**InputData**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.InputData)**)**

&#x20;    **get\_parameters()**

### class DatasetDriftMetricResults(drift\_share: float, number\_of\_columns: int, number\_of\_drifted\_columns: int, share\_of\_drifted\_columns: float, dataset\_drift: bool)

Bases: `object`

#### Attributes:

&#x20;    **dataset\_drift : bool**

&#x20;    **drift\_share : float**

&#x20;    **number\_of\_columns : int**

&#x20;    **number\_of\_drifted\_columns : int**

&#x20;    **share\_of\_drifted\_columns : float**

## target\_by\_features\_table module <a href="#module-evidently.metrics.data_drift.target_by_features_table" id="module-evidently.metrics.data_drift.target_by_features_table"></a>

### class TargetByFeaturesTable(columns: Optional\[List\[str]] = None)

Bases: [`Metric`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.Metric)\[`TargetByFeaturesTableResults`]

#### Attributes:

&#x20;    **columns : Optional\[List\[str]]**

#### Methods:

&#x20;    **calculate(data:** [**InputData**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/PNL2TuiArYt5TU085k7F#evidently.metrics.base_metric.InputData)**)**

### class TargetByFeaturesTableRenderer(color\_options: Optional\[[ColorOptions](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)] = None)

Bases: [`MetricRenderer`](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/M9iMLhGad2yNU1Kd04Dv#evidently.renderers.base_renderer.MetricRenderer)

#### Attributes:

&#x20;    **color\_options :** [**ColorOptions**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ZW3IQh73672cpd3xySyJ#evidently.options.color_scheme.ColorOptions)

#### Methods:

&#x20;    **render\_html(obj: TargetByFeaturesTable)**

&#x20;    **render\_json(obj: TargetByFeaturesTable)**

### class TargetByFeaturesTableResults(current\_plot\_data: pandas.core.frame.DataFrame, reference\_plot\_data: pandas.core.frame.DataFrame, target\_name: Optional\[str], curr\_predictions: Optional\[[PredictionData](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ICxNS1GschXEUCV60dnZ#evidently.calculations.classification_performance.PredictionData)], ref\_predictions: Optional\[[PredictionData](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ICxNS1GschXEUCV60dnZ#evidently.calculations.classification_performance.PredictionData)], columns: List\[str], task: str)

Bases: `object`

#### Attributes:

&#x20;    **columns : List\[str]**

&#x20;    **curr\_predictions : Optional\[**[**PredictionData**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ICxNS1GschXEUCV60dnZ#evidently.calculations.classification_performance.PredictionData)**]**

&#x20;    **current\_plot\_data : DataFrame**

&#x20;    **ref\_predictions : Optional\[**[**PredictionData**](https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/pages/ICxNS1GschXEUCV60dnZ#evidently.calculations.classification_performance.PredictionData)**]**

&#x20;    **reference\_plot\_data : DataFrame**

&#x20;    **target\_name : Optional\[str]**

&#x20;    **task : str**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs-old.evidentlyai.com/reference/api-reference/evidently.metrics/evidently.metrics.data_drift.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
