Expand description
§rust-rule-miner
Automatic rule discovery from historical data using association rule mining, sequential pattern mining, and graph-based pattern matching.
§Quick Start
use rust_rule_miner::{RuleMiner, Transaction, MiningConfig, MiningAlgorithm};
use chrono::Utc;
// Load transactions
let transactions = vec![
Transaction::new("tx1", vec!["Laptop".to_string(), "Mouse".to_string()], Utc::now()),
Transaction::new("tx2", vec!["Laptop".to_string(), "Keyboard".to_string()], Utc::now()),
];
// Configure mining
let config = MiningConfig {
min_support: 0.3,
min_confidence: 0.7,
min_lift: 1.0,
max_time_gap: None,
algorithm: MiningAlgorithm::Apriori,
};
// Mine rules
let mut miner = RuleMiner::new(config);
miner.add_transactions(transactions).unwrap();
let rules = miner.mine_association_rules().unwrap();Re-exports§
pub use data_loader::ColumnMapping;pub use config::MiningAlgorithm;pub use config::MiningConfig;pub use errors::MiningError;pub use errors::Result;pub use export::grl::GrlConfig;pub use export::grl::RuleTemplate;pub use mining::RuleMiner;pub use transaction::Transaction;pub use types::AssociationRule;pub use types::FrequentItemset;pub use types::ItemSet;pub use types::Pattern;pub use types::PatternMetrics;pub use types::PatternType;pub use types::SequentialPattern;
Modules§
- config
- data_
loader - Data loading utilities for Excel and CSV files using excelstream
- engine
- Rule engine integration module
- errors
- export
- graph
- mining
- transaction
- types