Examples
Customer Churn Classification
from universal_ml_framework import UniversalMLPipeline, DataGenerator
# Generate sample data
DataGenerator.generate_customer_churn()
# Run classification pipeline
pipeline = UniversalMLPipeline(problem_type='classification')
pipeline.run_pipeline(
train_path='data/customer_train.csv',
target_column='Churn',
test_path='data/customer_test.csv'
)
print(f"Best model: {pipeline.best_model_name}")
print(f"Best score: {pipeline.best_score:.4f}")
House Price Prediction
from universal_ml_framework import UniversalMLPipeline, DataGenerator
# Generate sample data
DataGenerator.generate_house_prices()
# Run regression pipeline
pipeline = UniversalMLPipeline(problem_type='regression')
pipeline.run_pipeline(
train_path='data/house_train.csv',
target_column='SalePrice',
test_path='data/house_test.csv'
)
print(f"Best model: {pipeline.best_model_name}")
print(f"Best MSE: {pipeline.best_score:.2f}")
Sales Forecasting
from universal_ml_framework import UniversalMLPipeline, DataGenerator
# Generate sample data
DataGenerator.generate_sales_forecasting()
# Run regression pipeline
pipeline = UniversalMLPipeline(problem_type='regression')
pipeline.run_pipeline(
train_path='data/sales_train.csv',
target_column='Sales',
test_path='data/sales_test.csv'
)
Using Predefined Configurations
from universal_ml_framework import run_pipeline_with_config, list_available_configs
# List available configurations
list_available_configs()
# Run with predefined config
pipeline = run_pipeline_with_config('customer_churn')
Custom Feature Engineering
from universal_ml_framework import UniversalMLPipeline
pipeline = UniversalMLPipeline(problem_type='classification')
# Manually specify feature types
pipeline.feature_types = {
'numeric': ['age', 'income', 'tenure'],
'categorical': ['city', 'job_type', 'education'],
'binary': ['has_phone', 'has_internet', 'is_senior']
}
pipeline.run_pipeline(
train_path='data.csv',
target_column='target',
custom_features=pipeline.feature_types['numeric'] +
pipeline.feature_types['categorical'] +
pipeline.feature_types['binary']
)
Batch Processing Multiple Datasets
from universal_ml_framework import UniversalMLPipeline, DataGenerator
# Generate all sample datasets
DataGenerator.generate_all_datasets()
datasets = [
('data/customer_train.csv', 'Churn', 'classification'),
('data/house_train.csv', 'SalePrice', 'regression'),
('data/sales_train.csv', 'Sales', 'regression')
]
results = {}
for train_path, target, problem_type in datasets:
pipeline = UniversalMLPipeline(problem_type=problem_type)
pipeline.run_pipeline(train_path, target)
results[train_path] = {
'best_model': pipeline.best_model_name,
'best_score': getattr(pipeline, 'best_score', 'N/A')
}
for dataset, result in results.items():
print(f"{dataset}: {result['best_model']} - {result['best_score']}")
Working with Your Own Data
from universal_ml_framework import UniversalMLPipeline
# For your own CSV file
pipeline = UniversalMLPipeline(problem_type='classification')
pipeline.run_pipeline(
train_path='your_data.csv',
target_column='your_target_column',
test_path='your_test_data.csv',
exclude_columns=['id', 'timestamp', 'irrelevant_column']
)
# Check results
print(f"Best model: {pipeline.best_model_name}")
print(f"Cross-validation score: {pipeline.cv_results[pipeline.best_model_name]['mean']:.4f}")
print(f"Feature types detected: {pipeline.feature_types}")
Loading Saved Models
import joblib
import json
# Load saved model
model = joblib.load('best_model.pkl')
# Load model metadata
with open('model_info.json', 'r') as f:
model_info = json.load(f)
print(f"Model type: {model_info['best_model']}")
print(f"Problem type: {model_info['problem_type']}")
print(f"CV Score: {model_info['cv_score']:.4f}")
# Make predictions on new data
# predictions = model.predict(new_data)
Tip
All examples generate output files that you can examine:
predictions.csv- Model predictionsbest_model.pkl- Trained modelmodel_info.json- Model metadata and performance