Apriori 算法 - 在生产数据中寻找关联

Apriori algrithm - finding associations in production data

我无法在生产数据中找到“正确的”关联。

数据是这样的

A;B;C;D;E;F;G
1;0;1;0;0;0;0
0;1;0;0;0;0;0
0;0;0;1;0;0;0
0;0;1;0;1;0;0
1;0;0;0;0;0;0
0;0;0;0;0;1;0
0;0;0;0;0;0;1
1;0;1;0;0;0;0

(当然我的步数和行数多了很多)

其中 A、B、C 等是生产步骤。 0 表示工人没有执行此生产步骤,1 表示此步骤由工人执行。例如,第一行 - 1;0;1;0;0;0;0 表示步骤 A 和 C 由工人同时执行。第二行 -0;1;0;0;0;0;0 表示(可能是另一个工人)只执行了生产步骤 B。

所以碰巧一些生产步骤通常由同一个工人同时执行,就像上面示例中的步骤 A 和 C(它们 3 次中有 2 次同时发生)。为了找到哪些步骤倾向于一起执行,我应用了先验算法。

我希望得到这样的回答“如果A列有1,那么C列很可能会出现1”。但是相反,先验算法为我找到了这个“很酷”的规则,它基本上说 table 中有很多 0。找到这样的规则“如果 A 和 G 列中有 0,则 E 列中可能有 0”- 感谢 Sherlock

我需要此算法专注于与 table 中的 1 而不是 0 相关的规则。基本上任何查看 0 的规则都可以忽略。我只想要看 1s 的规则,因为我想知道哪些生产步骤倾向于一起执行,我不关心哪些生产步骤不一起执行(0s),因为显然大多数步骤不是同时执行的。

有人知道如何找到 1 而不是 0 之间的关联吗?

我用Weka软件做数据挖掘。

Apriori 不知道标签代表什么,它们只是字符串。

您是否尝试过 -Z 选项,将属性中的第一个标签视为缺失?