Expand description
Outlier detection (Phase 1).
Provides a few common numeric outlier detection primitives backed by Polars expressions.
§Example
use rust_data_processing::outliers::{detect_outliers_dataset, OutlierMethod, OutlierOptions};
use rust_data_processing::profiling::SamplingMode;
use rust_data_processing::types::{DataSet, DataType, Field, Schema, Value};
let ds = DataSet::new(
Schema::new(vec![Field::new("x", DataType::Float64)]),
vec![
vec![Value::Float64(1.0)],
vec![Value::Float64(1.0)],
vec![Value::Float64(1.0)],
vec![Value::Float64(1.0)],
vec![Value::Float64(1000.0)],
],
);
let rep = detect_outliers_dataset(
&ds,
"x",
OutlierMethod::Iqr { k: 1.5 },
&OutlierOptions { sampling: SamplingMode::Full, max_examples: 3 },
)?;
assert!(rep.outlier_count >= 1);