Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# MicroImpute
# Microimpute

MicroImpute enables variable imputation through different statistical methods. It facilitates comparison and benchmarking across methods through quantile loss calculations.
Microimpute enables variable imputation through different statistical methods. It facilitates comparison and benchmarking across methods through quantile loss calculations.

To install, run pip install microimpute.

Expand Down
7 changes: 7 additions & 0 deletions changelog_entry.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
- bump: patch
changes:
changed:
- Refactor the Imputer base class.
- Refactor cross-validation, comparison, visualization, and autoimputation functions.
added:
- Improved test coverage.
37 changes: 32 additions & 5 deletions microimpute/__init__.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,28 @@
"""MicroImpute Package
"""Microimpute: advanced statistical imputation for microdata

A package for benchmarking different imputation methods using microdata.
Microimpute is a comprehensive Python package for benchmarking and applying
various statistical imputation methods to microdata. It provides tools for
automated model selection, cross-validation, and visualization of imputation results.

Key features:
- Multiple imputation models (OLS, QRF, QuantReg, Matching)
- Automated model selection with cross-validation
- Quantile-based imputation and evaluation
- Comprehensive visualization tools
- Support for weighted imputation
- Hyperparameter tuning capabilities

Main components:
- autoimpute: automated imputation with model selection
- Models: OLS, QRF, QuantReg, Matching (optional)
- Evaluation: cross-validation and quantile loss metrics
- Visualization: performance and comparison plots
"""

__version__ = "1.1.2"

from microimpute.comparisons.autoimpute import autoimpute
# Import automated imputation
from microimpute.comparisons.autoimpute import AutoImputeResult, autoimpute
from microimpute.comparisons.imputations import get_imputations

# Import comparison utilities
Expand All @@ -15,6 +32,14 @@
quantile_loss,
)

# Import validation utilities
from microimpute.comparisons.validation import (
validate_columns_exist,
validate_dataframe_compatibility,
validate_imputation_inputs,
validate_quantiles,
)

# Main configuration
from microimpute.config import (
PLOT_CONFIG,
Expand All @@ -30,15 +55,17 @@
from microimpute.models import OLS, QRF, Imputer, ImputerResults, QuantReg

# Import data handling functions
from microimpute.utils.data import preprocess_data
from microimpute.utils.data import preprocess_data, unnormalize_predictions

try:
from microimpute.models.matching import Matching
except ImportError:
pass

# Import visualization modules
from microimpute.visualizations.plotting import (
from microimpute.visualizations import (
MethodComparisonResults,
PerformanceResults,
method_comparison_results,
model_performance_results,
)
27 changes: 22 additions & 5 deletions microimpute/comparisons/__init__.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,34 @@
"""Data Comparison Utilities
"""Imputation method comparison and evaluation utilities

This module contains utilities for comparing different imputation methods.
This module provides comprehensive tools for comparing and evaluating different
imputation methods. It includes automated model selection, quantile loss metrics,
and validation utilities for ensuring data integrity.

Key components:
- autoimpute: automated imputation method selection and application
- get_imputations: generate imputations using multiple model classes
- quantile_loss: calculate quantile-based loss metrics
- compare_quantile_loss: compare performance across imputation methods
- Validation utilities for data and parameter validation
"""

# Import automated imputation utilities
from .autoimpute import autoimpute
from microimpute.comparisons.autoimpute import AutoImputeResult, autoimpute

# Import imputation utilities
from .imputations import get_imputations
from microimpute.comparisons.imputations import get_imputations

# Import loss functions
from .quantile_loss import (
from microimpute.comparisons.quantile_loss import (
compare_quantile_loss,
compute_quantile_loss,
quantile_loss,
)

# Import validation utilities
from microimpute.comparisons.validation import (
validate_columns_exist,
validate_dataframe_compatibility,
validate_imputation_inputs,
validate_quantiles,
)
Loading