Phpml\Association\Apriori::apriori PHP Method

apriori() public method

Generates frequent item sets.
public apriori ( ) : array
return array
    public function apriori() : array
    {
        $L = [];
        $L[1] = $this->items();
        $L[1] = $this->frequent($L[1]);
        for ($k = 2; !empty($L[$k - 1]); ++$k) {
            $L[$k] = $this->candidates($L[$k - 1]);
            $L[$k] = $this->frequent($L[$k]);
        }
        return $L;
    }

Usage Example

Example #1
0
 public function testApriori()
 {
     $apriori = new Apriori(3 / 7);
     $apriori->train($this->sampleBasket, []);
     $L = $apriori->apriori();
     $this->assertCount(0, $L[3]);
     $this->assertCount(4, $L[2]);
     $this->assertTrue($this->invoke($apriori, 'contains', [$L[2], [1, 2]]));
     $this->assertFalse($this->invoke($apriori, 'contains', [$L[2], [1, 3]]));
     $this->assertFalse($this->invoke($apriori, 'contains', [$L[2], [1, 4]]));
     $this->assertTrue($this->invoke($apriori, 'contains', [$L[2], [2, 3]]));
     $this->assertTrue($this->invoke($apriori, 'contains', [$L[2], [2, 4]]));
     $this->assertTrue($this->invoke($apriori, 'contains', [$L[2], [3, 4]]));
 }