Changelog¶
All notable changes to this project are documented here.
The format follows Keep a Changelog. This project adheres to Semantic Versioning.
[0.3.4] — 2026-07-09¶
Changed¶
- Declared Python support as 3.9 through 3.12 in package metadata and documentation.
[0.3.3] — 2026-07-09¶
Added¶
transform()now detects data that appears to have already been transformed by the same fitted transformer, returns it unchanged, and emits a warning.
[0.3.2] — 2026-07-09¶
Added¶
- Parallel per-column processing via the
n_jobsconstructor argument forfit()andtransform(). - Support for joblib-style negative
n_jobsvalues, includingn_jobs=-1to use all available CPUs.
[0.3.1] — 2026-07-08¶
Fixed¶
inverse_transform()now converts datetime columns from their integer offset representation back to pandas timestamps.- Datetime missing-value restoration now uses
NaT, preserving datetime dtype whenrestore_missing=True.
[0.3.0] — 2026-07-07¶
Added¶
- Category mapping accessors:
get_category_mappings()andget_category_mapping(...). - Portable fitted-state persistence with
save()andIFCTransformer.load()for transform/inverse-transform workflows on another machine.
Changed¶
- The default categorical missing category is now
__ifcfill_missing__to reduce collisions with real categories. - Label encoding now runs as a separate layer after categorical filling so learned fill categories are included in the mapping.
- Categorical columns with one observed category plus missing values are kept
when
cat_fill="constant"because the missing category is learnable.
[0.2.0] — 2026-07-07¶
Added¶
- Optional categorical label encoding via
cat_encoding="label". - Category mapping attributes for inverse-compatible label encoding:
category_mappings_andinverse_category_mappings_. - Categorical missing values are represented as a learnable category by default
and converted back to missing values during
inverse_transform().
[0.1.0] — 2026-03-27¶
Added¶
IFCTransformerclass withfit(),transform(),fit_transform(), andinverse_transform().- Automatic type inference for integer, float, categorical, and datetime columns.
- Per-column type overrides via
col_typesconstructor argument. - Configurable imputation strategies:
- Integer:
mean,median,mode,zero - Float:
mean,median,mode,zero - Categorical:
mode,constant - Datetime-to-integer conversion with configurable anchor date and time unit.
- Automatic detection and removal of constant columns.
- Missing value distribution tracking via
missing_counts_,missing_fractions_, andmissing_report_. inverse_transform()with optional missing-value restoration and reproduciblerandom_state.- Accepts
pandas.DataFrameand CSV file paths as input. - NumPy-based computation engine for fast processing.