imputr.strategy._base#

Module Contents#

Classes#

_BaseStrategy

Abstract base class for strategy classes.

_MultivariateStrategy

The abstract class that contains the interface for multivariate imputation

_UnivariateStrategy

The abstract class that contains the interface for univariate imputation

class imputr.strategy._base._BaseStrategy(target_column: imputr.domain.Column)#

Bases: abc.ABC

Abstract base class for strategy classes.

This class contains the abstract methods that define the interface for all strategy classes which implement an imputer strategy.

Parameters

target_column (Column) – The column that undergoes imputation by the strategy.

abstract property supported_data_types: List[imputr.domain.DataType]#

The imputer data types that are supported by this imputation strategy.

Returns

List[DataType] – List of imputr DataType enums.

target_column :imputr.domain.Column#
abstract classmethod from_dict(target_column: imputr.domain.Column, **kwargs: Dict)#

Class constructor that uses the dictionary to build strategy.

Uses a part of the dictionary given to imputer constructor.

Parameters

target_column (Column) – Column that needs imputation by strategy.

abstract fit() None#

Executes the necessary preparation steps for imputation.

This method may train a machine learning model, fit a distribution, compute statistics in order to make it ready for imputation.

abstract impute_column() pandas.Series#

Runs imputer strategy on the target column.

This method fills all missing values with its own strategy.

Returns

pd.Series – The Pandas Series that contains that has the imputed column values.

class imputr.strategy._base._MultivariateStrategy(target_column: imputr.domain.Column, feature_columns: List[imputr.domain.Column])#

Bases: _BaseStrategy

The abstract class that contains the interface for multivariate imputation strategies.

feature_columns :List[imputr.domain.Column]#
_feature_df :pandas.DataFrame#
abstract classmethod from_dict(target_column: imputr.domain.Column, feature_columns: List[imputr.domain.Column], **kwargs: Dict)#

Class constructor that uses the dictionary to build strategy.

Uses a part of the dictionary given to imputer constructor.

Parameters

target_column (Column) – Column that needs imputation by strategy.

_create_df_from_num_encoded_feature_columns(feature_columns: List[imputr.domain.Column]) pandas.DataFrame#

Creates pd.DataFrame from pd.Series objects that contain the numerically encoded imputed data for the respective column.

Returns

pd.DataFrame – joined dataframe of num-encoded and imputed data.

class imputr.strategy._base._UnivariateStrategy(target_column: imputr.domain.Column)#

Bases: _BaseStrategy

The abstract class that contains the interface for univariate imputation strategies.

abstract classmethod from_dict(target_column: imputr.domain.Column, **kwargs: Dict)#

Class constructor that uses the dictionary to build strategy.

Uses a part of the dictionary given to imputer constructor.

Parameters

target_column (Column) – Column that needs imputation by strategy.