Featuresmith Icon
Featuresmith
  • Docs
  • SDK
  • CLI
  • Examples
  • Roadmap
v0.4.0
Documentation

Getting Started

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

Core Concepts

  • Architecture Overview
  • Dataset Layer
  • Connectors
  • Profiling Engine
  • Rule Engine
  • Dataset Review Engine
  • ML Readiness Score
  • Target Leakage Detection
  • Dataset Diff Engine
  • Target Column Concept
  • Mental Model & Workflow
  • Interpreting Findings
  • Workflow Cheat Sheet
  • Beginner Glossary

Python SDK

  • load()
  • profile()
  • analyze()
  • review()
  • diff()
  • score()
  • plan()
  • Dataset
  • Data Models
  • Profile Models
  • Rule & Finding Models
  • Review Models
  • Score Models
  • Leakage Models
  • Diff Models
  • Exceptions
  • Plugins

CLI Reference

  • analyze
  • review
  • diff
  • score
  • plan
  • Configuration

Guides

  • CI/CD Integration
  • Custom Rules
  • Writing Plugins

Resources

  • Release Notes
  • FAQ
  • Troubleshooting
DocsGuide

Getting Started

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

Core Concepts

  • Architecture Overview
  • Dataset Layer
  • Connectors
  • Profiling Engine
  • Rule Engine
  • Dataset Review Engine
  • ML Readiness Score
  • Target Leakage Detection
  • Dataset Diff Engine
  • Target Column Concept
  • Mental Model & Workflow
  • Interpreting Findings
  • Workflow Cheat Sheet
  • Beginner Glossary

Python SDK

  • load()
  • profile()
  • analyze()
  • review()
  • diff()
  • score()
  • plan()
  • Dataset
  • Data Models
  • Profile Models
  • Rule & Finding Models
  • Review Models
  • Score Models
  • Leakage Models
  • Diff Models
  • Exceptions
  • Plugins

CLI Reference

  • analyze
  • review
  • diff
  • score
  • plan
  • Configuration

Guides

  • CI/CD Integration
  • Custom Rules
  • Writing Plugins

Resources

  • Release Notes
  • FAQ
  • Troubleshooting
HomeDocsfs.analyze()

Python SDK

fs.analyze()

SDK Reference: comprehensive analysis

python
1def analyze(
2 source: object,
3 *,
4 target_column: str | None = None,
5 enabled_rules: list[str] | None = None,
6 rule_config: dict[str, Any] | None = None,
7 max_correlation_columns: int = 100,
8 max_frequency_table_size: int = 1000,
9) -> RuleResult:

Combines loading, profiling, and rules auditing into a single public SDK endpoint.

When to Use It

Use when you want to compute statistical profiles and evaluate quality rules simultaneously to obtain a list of flagged RuleFinding objects.

Arguments

  • source: Dataset | str | DataFrame. Input data or path.
  • target_column: str | None (default None). Target column name. Required for target leakage checks.
  • enabled_rules: list[str] | None (default None). Explicit rule IDs to evaluate. If omitted, runs all defaults.
  • rule_config: dict[str, Any] | None. Keyword argument config overrides for specific rules.
  • max_correlation_columns: int (default 100). Cap limit for correlation matrix computation.
  • max_frequency_table_size: int (default 1000). Frequency table storage cap.

Return Value

Returns a frozen RuleResult dataclass containing profile (ProfileResult), findings (sequence of RuleFinding), executed_rules, execution_time_ms, and failed_rules (mapping of rule ID to error traceback).

Exceptions

  • ConnectorError: Raised if the source dataset fails to load before profiling.

Example

python
1import featuresmith as fs
2
3result = fs.analyze(
4 "train.csv",
5 target_column="churn",
6 rule_config={
7 "quality.missing_value_threshold": {"threshold": 30.0},
8 "statistical.high_correlation": {"threshold": 0.85},
9 }
10)
11
12print(f"Executed {len(result.executed_rules)} rules with {len(result.findings)} findings.")
13for finding in result.findings:
14 print(f"[{finding.severity}] {finding.title} in {finding.column_name}")

Explore

  • Quick Start
  • Python SDK
  • CLI Reference
  • Examples
Featuresmith Icon
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 by Aditya Gangwani in the open.