liveBook · Manning

ECLAT

As explained in Data Without Labels

ECLAT is a frequent-itemset-mining algorithm that uses a vertical transaction representation and set intersections to compute itemset support.

ECLAT is a frequent-itemset-mining algorithm for association rules. It represents transactions vertically, records the invoices containing each item, and uses depth-first search with set intersections to find frequent combinations. section 4.11 section 4.5

A practical ECLAT workflow follows the transaction structure through progressively larger itemsets:

  • Start with each individual item and collect the invoice numbers in which it appears. section 4.5
  • Intersect invoice sets to evaluate pairs and then larger combinations, retaining combinations that meet the support threshold. section 4.5
  • Traverse the combination tree depth-first, backtracking when a branch reaches a terminal node and continuing until combinations are exhausted. section 4.5
  • Inspect support for individual items and combinations, then use the results to assess association-rule candidates. section 4.5.1 section 4.11

Invoice intersections

If milk appears in invoices 1001 and 1003, while eggs appears in 1001, 1002, 1003, 1004, and 1005, their pair appears in invoices 1001 and 1003. Extending the same process gives three-item combinations such as milk, eggs, and bread in invoices 1001 and 1003.

Python implementation with pyECLAT

Load a transaction CSV into a pandas DataFrame, create an ECLAT instance, and fit it with min_support=0.02, min_combination=1, max_combination=3, and separator=' & '. The returned supports quantify item and combination frequency; one reported example gives french fries and eggs a support of 3.43%. section 4.5.1

How Data Without Labels covers it

How deep it goes
Explains vertical invoice sets, depth-first tree traversal, intersections, support, and a Python implementation, without deriving further algorithmic theory.
Examples
Uses grocery invoices, item-to-invoice tables, combination tables, a traversal tree, and a pyECLAT support output.
What you can do after
Apply it via pyECLAT to load transactions, configure combination and support thresholds, and interpret frequent-itemset supports.
How it connects
Contrasts ECLAT with Apriori and FP-growth while connecting itemsets to support, confidence, lift, and association rules.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Data Without Labels. The section links point to the parts of the book it draws on.