featrs
Feature engineering library for Rust, inspired by scikit-learn.
Built on Polars — works natively with DataFrames.
Status: Early development — API is unstable and incomplete.
Features
| Component | Status |
|---|---|
| Component | Status |
| --- | --- |
StandardScaler |
✅ |
MinMaxScaler |
✅ |
RobustScaler |
✅ |
Normalizer |
✅ |
OneHotEncoder |
✅ |
LabelEncoder |
✅ |
OrdinalEncoder |
✅ |
Binarizer |
✅ |
SimpleImputer |
✅ |
PolynomialFeatures |
✅ |
Pipeline |
✅ |
ColumnTransformer |
✅ |
VarianceThreshold |
✅ |
SelectKBest |
✅ |
Usage
[]
= "0.1"
StandardScaler
use StandardScaler;
use ;
let mut scaler = new;
scaler.fit?;
let scaled = scaler.transform?;
Pipeline
use Pipeline;
use StandardScaler;
use PolynomialFeatures;
let mut pipeline = new;
pipeline.fit?;
let result = pipeline.transform?;
ColumnTransformer
use ColumnTransformer;
use Remainder;
use StandardScaler;
let ct = new;
Feature Selection
use VarianceThreshold;
use SelectKBest;
use FClassif;
// Remove constant / low-variance features
let mut vt = new;
vt.fit?;
let filtered = vt.transform?;
// Select top k features by ANOVA F-value
let mut skb = new;
skb.fit?;
let selected = skb.transform?;
PolynomialFeatures
use PolynomialFeatures;
let mut pf = new
.include_bias
.interaction_only;
pf.fit?;
let result = pf.transform?;
License
MIT