example_usage/
example_usage.rs

1use fp_growth::algorithm::FPGrowth;
2
3fn main() {
4    let transactions = vec![
5        vec!["e", "c", "a", "b", "f", "h"],
6        vec!["a", "c", "g"],
7        vec!["e"],
8        vec!["e", "c", "a", "g", "d"],
9        vec!["a", "c", "e", "g"],
10        vec!["e"],
11        vec!["a", "c", "e", "b", "f"],
12        vec!["a", "c", "d"],
13        vec!["g", "c", "e", "a"],
14        vec!["a", "c", "e", "g"],
15        vec!["i"],
16    ];
17    let minimum_support = 2;
18    let fp_growth_str = FPGrowth::<&str>::new(transactions, minimum_support);
19
20    let result = fp_growth_str.find_frequent_patterns();
21    println!("The number of results: {}", result.frequent_patterns_num());
22    for (frequent_pattern, support) in result.frequent_patterns().iter() {
23        println!("{:?} {}", frequent_pattern, support);
24    }
25}