前段时间由于数据挖掘课程需要用Matalb写一份关于Apriori算法的程序。成功之后,我举头明月感叹-“Matalb处理矩阵的能力如此强大啊,膜拜开发Matlab大神”。
本着复制粘贴是我们程序员的第一选择,然而,在我细心搜索之下,竟然发现我所搜索的实现都差不多几百行代码,还看得我眼花缭乱,不知所云。于是乎,我毅然选择了一条不归路,自己苦逼敲键盘。
------------------------------------------------------------------------------------------------------------
Apriori算法实现步骤:
Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法Apriori使用一种称作逐层搜索的迭代方法,“K-1项集”用于搜索“K项集”。
首先,找出频繁“1项集”的集合,该集合记作L1。L1用于找频繁“2项集”的集合L2,而L2用于找L3。如此下去,直到不能找到“K项集”。找每个Lk都需要一次数据库扫描。
核心思想是:连接步和剪枝步。连接步是自连接,原则是保证前k-2项相同,并按照字典顺序连接。剪枝步,是使任一频繁项集的所有非空子集也必须是频繁的。反之,如果某
个候选的非空子集不是频繁的,那么该候选肯定不是频繁的,从而可以将其从