featuresmith
  • Docs
  • SDK
  • CLI
  • Examples
  • Roadmap
v0.1.0
Documentation

Getting Started

  • Introduction
  • Installation
  • Quick Start
  • Benchmarks
  • Development Setup
  • Contributing

Core Concepts

  • Architecture Overview
  • Dataset Layer
  • Connectors
  • Profiling Engine
  • Rule Engine

Python SDK

  • load()
  • profile()
  • analyze()
  • Data Models
  • Exceptions
  • Plugins

CLI Reference

  • analyze
  • Configuration

Guides

  • CI/CD Integration
  • Custom Rules
  • Writing Plugins

Resources

  • Release Notes
  • FAQ
  • Troubleshooting
DocsGuide

Getting Started

  • Introduction
  • Installation
  • Quick Start
  • Benchmarks
  • Development Setup
  • Contributing

Core Concepts

  • Architecture Overview
  • Dataset Layer
  • Connectors
  • Profiling Engine
  • Rule Engine

Python SDK

  • load()
  • profile()
  • analyze()
  • Data Models
  • Exceptions
  • Plugins

CLI Reference

  • analyze
  • Configuration

Guides

  • CI/CD Integration
  • Custom Rules
  • Writing Plugins

Resources

  • Release Notes
  • FAQ
  • Troubleshooting
HomeDocsProfiling Engine

Core Concepts

Profiling Engine

High-speed deterministic data profiling

Featuresmith does not compute layout charts in core; it computes **deterministic statistical descriptors** returned as a typed, serializable ProfileResult.

Statistical Coverage

The profiling engine executes optimized, batched vectorized computations to compile:

  • 23 Numeric Metrics: Mean, median, mode, min, max, standard deviation, variance, skewness, kurtosis, quantiles (IQR, Q1, Q2, Q3), sum, zero count, negative count, positive count, range, and counts.
  • Categorical Profiles: Cardinality, unique count, entropy, top frequency tables (capped), least frequent tables, and missing rates.
  • Datetime Profiles: Minimum (earliest), maximum (latest), range span in days, and missing rates.
  • Text Profiles: Average/min/max string length, empty strings count, whitespace-only count, total character count, and word count.

Correlation Safeguard

On wide tables, Pearson correlation matrix computation scales quadratically, which can crash memory or hang the execution. Featuresmith enforces a config-controlled correlation cap (max_correlation_columns, default 100) to ensure predictable execution.

python
1# Customize the correlation column cutoff
2profile = fs.profile("wide_table.csv", max_correlation_columns=50)

Explore

  • Quick Start
  • Python SDK
  • CLI Reference
  • Examples
featuresmith

Open-source data profiling and validation for Python engineers.

Documentation

  • Introduction
  • Quick Start
  • Python SDK
  • CLI Reference

Community

  • GitHub
  • Discussions
  • Issues
  • Contributing

Project

  • Roadmap
  • Release status
  • Benchmarks
  • Changelog
  • Examples

Legal

  • Apache 2.0 License
  • Code of Conduct
  • Security

© 2026 Featuresmith Contributors. Released under the Apache 2.0 License.

Built in the open — contributions welcome.