Ads by Google
Christian Borgelt's Web Pages

SaM - Frequent Item Set Mining


32 bit 64 bit (32/64 bit only for executable)
sam (370 kb) sam (384 kb) GNU/Linux executable
sam.exe (254 kb) sam.exe (291 kb) Windows console executable (198 kb) sam.tar.gz (179 kb) C sources, version 3.20 (2016.11.23) (382 kb) census data set (UCI ML repository)
census (2 kb) shell script used for the conversion


SaM is a program to find frequent item sets (also closed and maximal) with a split and merge algorithm (Split and Merge), which combines a depth-first traversal of the subset lattice with a horizontal transaction representation. The main strength of this algorithm is not its speed (although it is not slow, but even outperforms Apriori and Eclat on some data sets), but the simplicity of its structure. Basically all the work is done in one recursive function of about fairly few lines of code. In addition, it only uses a simple array as the only data structure.

Note that the current version of this program can only find frequent item sets, not association rules.

Full description of the SaM program (included in the source package).

If you have trouble executing the program on Microsoft Windows, check whether you have the Microsoft Visual C++ Redistributable Packages for Visual Studio 2015 installed, as the library was compiled with Microsoft Visual Studio 2015.

Papers that describe this algorithm/implementation:

More information about frequent item set mining, implementations of other algorithms as well as test data sets can be found at the Frequent Itemset Mining Implementations Repository.