nannyml.drift.target.target_distribution.result module
The classes representing the results of a target distribution calculation.
- class nannyml.drift.target.target_distribution.result.TargetDistributionResult(target_distribution: pandas.core.frame.DataFrame, model_metadata: nannyml.metadata.base.ModelMetadata)[source]
Bases:
object
Contains target distribution data and utilities to plot it.
Creates a new instance of the TargetDistributionResults.
- plot(kind: str = 'distribution', distribution: str = 'metric', *args, **kwargs) plotly.graph_objs._figure.Figure [source]
Renders a line plot of the target distribution.
Chunks are set on a time-based X-axis by using the period containing their observations. Chunks of different partitions (
reference
andanalysis
) are represented using different colors and a vertical separation if the drift results contain multiple partitions.- Parameters
kind (str) – The kind of plot to show. Restricted to the value ‘distribution’.
distribution (str, default='metric') – The kind of distribution to plot. Restricted to the values ‘metric’ or ‘statistical’
- Returns
fig – A
Figure
object containing the requested drift plot. Can be saved to disk or shown rendered on screen usingfig.show()
.- Return type
plotly.graph_objects.Figure
Examples
>>> import nannyml as nml >>> ref_df, ana_df, _ = nml.load_synthetic_binary_classification_dataset() >>> metadata = nml.extract_metadata(ref_df, model_type=nml.ModelType.CLASSIFICATION_BINARY) >>> target_distribution_calc = nml.TargetDistributionCalculator(model_metadata=metadata, chunk_period='W') >>> target_distribution_calc.fit(ref_df) >>> target_distribution = target_distribution_calc.calculate(ana_df) >>> # plot the distribution of the mean >>> target_distribution.plot(kind='metric').show() >>> # plot the Chi square statistic >>> target_distribution.plot(kind='statistical').show()