RotoML
A native Rust AutoML toolkit for machine learning pipelines with powerful data analysis and manipulation capabilities.
🚀 Version 0.1.2: Enhanced data operations and comprehensive analysis features.
Features
Data Loading
- Multi-format support: Load CSV and Parquet files
- Auto-detection: Automatically detects file format from extension
- Fast processing: Built on Polars for high-performance data operations
Data Operations
- Column operations: Drop single or multiple columns
- Row operations: Drop rows by index
- Duplicate detection: Identify duplicate columns and rows
- Data validation: Comprehensive error handling and validation
Data Analysis & Reporting
- Automated analysis: Generate comprehensive data reports in Markdown
- Quality metrics: Missing values, data completeness, type analysis
- Duplicate analysis: Detect and report duplicate columns and rows
- Statistical insights: Numeric and categorical column counts
Installation
Or add to your Cargo.toml:
[]
= "0.1.2"
Usage
Command Line
# Analyze CSV file
# Analyze Parquet file
As a Library
use DataLoader;
use DataOperations;
use DataReporter;
// Load data
let df = load?;
// Detect duplicates
let = count_duplicate_rows?;
let duplicate_columns = detect_duplicate_columns?;
// Drop columns
let df = drop_columns?;
// Drop rows
let df = drop_rows?;
// Generate report
generate_data_report?;
API Documentation
DataLoader
load(file_path)- Auto-detect and load CSV or Parquetload_csv(file_path)- Load CSV fileload_parquet(file_path)- Load Parquet file
DataOperations
drop_column(df, column_name)- Drop a single columndrop_columns(df, column_names)- Drop multiple columnsdrop_rows(df, indexes)- Drop rows by indexdetect_duplicate_columns(df)- Find duplicate columnscount_duplicate_rows(df)- Count and list duplicate rows
DataReporter
generate_data_report(df, file_name, output_path)- Generate comprehensive analysis report
Output Example
The generated report includes:
- DataFrame shape and column types
- Missing values analysis with percentages
- Data quality metrics
- Duplicate columns detection
- Duplicate rows analysis with indexes
Future Vision
RotoML is evolving into a complete automated machine learning pipeline:
- Feature engineering and selection
- Model selection and hyperparameter tuning
- Automated training and evaluation
- Pipeline orchestration
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT License - see LICENSE file for details.
Author
Okan Yenigün (okanyenigun@gmail.com)