In [1]:
Copied!
from krmining.association_rules import fpgrowth
from krmining.association_rules import evaluate
from krmining.datasets import make_fruit_sold_dummy_association_rules
from krmining.association_rules import fpgrowth
from krmining.association_rules import evaluate
from krmining.datasets import make_fruit_sold_dummy_association_rules
Using dummy data¶
In [2]:
Copied!
df = make_fruit_sold_dummy_association_rules()
df.head()
df = make_fruit_sold_dummy_association_rules()
df.head()
Out[2]:
| Description | apple | banana | mango | strawberry |
|---|---|---|---|---|
| InvoiceNo | ||||
| 1 | 1 | 1 | 1 | 0 |
| 2 | 1 | 1 | 1 | 1 |
| 3 | 0 | 1 | 1 | 1 |
In [3]:
Copied!
df.info()
df.info()
<class 'pandas.core.frame.DataFrame'> Int64Index: 3 entries, 1 to 3 Data columns (total 4 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 apple 3 non-null int64 1 banana 3 non-null int64 2 mango 3 non-null int64 3 strawberry 3 non-null int64 dtypes: int64(4) memory usage: 120.0 bytes
In [4]:
Copied!
combinations_supports = fpgrowth(df)
combinations_supports = fpgrowth(df)
C:\Users\Bina Umat\anaconda3\lib\site-packages\krmining\association_rules\_fpgrowth.py:288: UserWarning: The model still in maintaining in slow or extended memory warnings.warn(
In [5]:
Copied!
evaluate(combinations_supports)
evaluate(combinations_supports)
C:\Users\Bina Umat\anaconda3\lib\site-packages\krmining\association_rules\_evaluate.py:106: UserWarning: The model still in maintaining in slow or extended memory warnings.warn(
Out[5]:
array([[('banana', 'apple'), ('apple', 'mango'),
('mango', 'banana', 'apple'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'apple'), ('apple', 'banana', 'mango'),
('banana', 'mango', 'apple'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'apple'), ('apple',), ('banana', 'apple'),
0.6666666666666666, 0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'apple'), ('banana',), ('banana', 'apple'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('banana', 'apple'), ('banana', 'mango'),
('mango', 'banana', 'apple'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('banana', 'apple'), ('mango',), ('mango', 'banana', 'apple'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('mango', 'apple'), ('banana', 'apple'),
('banana', 'apple', 'mango'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('mango', 'apple'), ('apple', 'banana', 'mango'),
('banana', 'mango', 'apple'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('mango', 'apple'), ('apple',), ('apple', 'mango'),
0.6666666666666666, 0.6666666666666666, 0.6666666666666666, 1.0],
[('mango', 'apple'), ('banana',), ('banana', 'apple', 'mango'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('mango', 'apple'), ('banana', 'mango'),
('banana', 'apple', 'mango'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('mango', 'apple'), ('mango',), ('apple', 'mango'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('banana', 'mango', 'apple'), ('banana', 'apple'),
('banana', 'mango', 'apple'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'mango', 'apple'), ('apple', 'mango'),
('banana', 'mango', 'apple'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'mango', 'apple'), ('apple',),
('apple', 'banana', 'mango'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'mango', 'apple'), ('banana',),
('apple', 'banana', 'mango'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('banana', 'mango', 'apple'), ('banana', 'mango'),
('banana', 'mango', 'apple'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('banana', 'mango', 'apple'), ('mango',),
('apple', 'banana', 'mango'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('apple',), ('banana', 'apple'), ('apple', 'banana'),
0.6666666666666666, 0.6666666666666666, 0.6666666666666666, 1.0],
[('apple',), ('apple', 'mango'), ('apple', 'mango'),
0.6666666666666666, 0.6666666666666666, 0.6666666666666666, 1.0],
[('apple',), ('apple', 'banana', 'mango'),
('mango', 'apple', 'banana'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('apple',), ('banana',), ('apple', 'banana'), 0.6666666666666666,
1.0, 0.6666666666666666, 1.0],
[('apple',), ('banana', 'mango'), ('mango', 'apple', 'banana'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('apple',), ('mango',), ('apple', 'mango'), 0.6666666666666666,
1.0, 0.6666666666666666, 1.0],
[('banana',), ('banana', 'apple'), ('banana', 'apple'), 1.0,
0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('banana',), ('apple', 'mango'), ('mango', 'banana', 'apple'),
1.0, 0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('banana',), ('apple', 'banana', 'mango'),
('mango', 'banana', 'apple'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana',), ('apple',), ('banana', 'apple'), 1.0,
0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('banana',), ('banana', 'mango'), ('banana', 'mango'), 1.0, 1.0,
1.0, 1.0],
[('banana',), ('mango',), ('banana', 'mango'), 1.0, 1.0, 1.0, 1.0],
[('banana',), ('banana', 'strawberry'), ('banana', 'strawberry'),
1.0, 0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('banana',), ('strawberry', 'mango'),
('mango', 'banana', 'strawberry'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana',), ('strawberry', 'banana', 'mango'),
('mango', 'banana', 'strawberry'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana',), ('strawberry',), ('banana', 'strawberry'), 1.0,
0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('banana', 'mango'), ('banana', 'apple'),
('apple', 'banana', 'mango'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana', 'mango'), ('apple', 'mango'),
('apple', 'banana', 'mango'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana', 'mango'), ('apple', 'banana', 'mango'),
('banana', 'mango', 'apple'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana', 'mango'), ('apple',), ('apple', 'banana', 'mango'),
1.0, 0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('banana', 'mango'), ('banana',), ('banana', 'mango'), 1.0, 1.0,
1.0, 1.0],
[('banana', 'mango'), ('mango',), ('banana', 'mango'), 1.0, 1.0,
1.0, 1.0],
[('banana', 'mango'), ('banana', 'strawberry'),
('strawberry', 'banana', 'mango'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana', 'mango'), ('strawberry', 'mango'),
('strawberry', 'banana', 'mango'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana', 'mango'), ('strawberry', 'banana', 'mango'),
('banana', 'mango', 'strawberry'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('banana', 'mango'), ('strawberry',),
('strawberry', 'banana', 'mango'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('mango',), ('banana', 'apple'), ('apple', 'banana', 'mango'),
1.0, 0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('mango',), ('apple', 'mango'), ('apple', 'mango'), 1.0,
0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('mango',), ('apple', 'banana', 'mango'),
('banana', 'apple', 'mango'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('mango',), ('apple',), ('apple', 'mango'), 1.0,
0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('mango',), ('banana',), ('banana', 'mango'), 1.0, 1.0, 1.0, 1.0],
[('mango',), ('banana', 'mango'), ('banana', 'mango'), 1.0, 1.0,
1.0, 1.0],
[('mango',), ('banana', 'strawberry'),
('strawberry', 'banana', 'mango'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('mango',), ('strawberry', 'mango'), ('strawberry', 'mango'),
1.0, 0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('mango',), ('strawberry', 'banana', 'mango'),
('strawberry', 'banana', 'mango'), 1.0, 0.6666666666666666,
0.6666666666666666, 0.6666666666666666],
[('mango',), ('strawberry',), ('strawberry', 'mango'), 1.0,
0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
[('banana', 'strawberry'), ('banana',), ('banana', 'strawberry'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('banana', 'strawberry'), ('banana', 'mango'),
('mango', 'banana', 'strawberry'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('banana', 'strawberry'), ('mango',),
('mango', 'banana', 'strawberry'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('banana', 'strawberry'), ('strawberry', 'mango'),
('mango', 'banana', 'strawberry'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'strawberry'), ('strawberry', 'banana', 'mango'),
('banana', 'mango', 'strawberry'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'strawberry'), ('strawberry',),
('banana', 'strawberry'), 0.6666666666666666, 0.6666666666666666,
0.6666666666666666, 1.0],
[('mango', 'strawberry'), ('banana',),
('strawberry', 'banana', 'mango'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('mango', 'strawberry'), ('banana', 'mango'),
('strawberry', 'banana', 'mango'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('mango', 'strawberry'), ('mango',), ('strawberry', 'mango'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('mango', 'strawberry'), ('banana', 'strawberry'),
('strawberry', 'banana', 'mango'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('mango', 'strawberry'), ('strawberry', 'banana', 'mango'),
('banana', 'mango', 'strawberry'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('mango', 'strawberry'), ('strawberry',),
('strawberry', 'mango'), 0.6666666666666666, 0.6666666666666666,
0.6666666666666666, 1.0],
[('banana', 'mango', 'strawberry'), ('banana',),
('strawberry', 'banana', 'mango'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('banana', 'mango', 'strawberry'), ('banana', 'mango'),
('banana', 'mango', 'strawberry'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('banana', 'mango', 'strawberry'), ('mango',),
('strawberry', 'banana', 'mango'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('banana', 'mango', 'strawberry'), ('banana', 'strawberry'),
('banana', 'mango', 'strawberry'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'mango', 'strawberry'), ('strawberry', 'mango'),
('banana', 'mango', 'strawberry'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('banana', 'mango', 'strawberry'), ('strawberry',),
('strawberry', 'banana', 'mango'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0],
[('strawberry',), ('banana',), ('banana', 'strawberry'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('strawberry',), ('banana', 'mango'),
('mango', 'banana', 'strawberry'), 0.6666666666666666, 1.0,
0.6666666666666666, 1.0],
[('strawberry',), ('mango',), ('mango', 'strawberry'),
0.6666666666666666, 1.0, 0.6666666666666666, 1.0],
[('strawberry',), ('banana', 'strawberry'),
('banana', 'strawberry'), 0.6666666666666666, 0.6666666666666666,
0.6666666666666666, 1.0],
[('strawberry',), ('strawberry', 'mango'),
('mango', 'strawberry'), 0.6666666666666666, 0.6666666666666666,
0.6666666666666666, 1.0],
[('strawberry',), ('strawberry', 'banana', 'mango'),
('mango', 'banana', 'strawberry'), 0.6666666666666666,
0.6666666666666666, 0.6666666666666666, 1.0]], dtype=object)
In [6]:
Copied!
evaluate(combinations_supports, return_df=True)
evaluate(combinations_supports, return_df=True)
Out[6]:
| antecedents | consequents | combination | antecedent support | consequent support | combination support | confidence | |
|---|---|---|---|---|---|---|---|
| 0 | (banana, apple) | (apple, mango) | (mango, banana, apple) | 0.666667 | 0.666667 | 0.666667 | 1.0 |
| 1 | (banana, apple) | (apple, banana, mango) | (banana, mango, apple) | 0.666667 | 0.666667 | 0.666667 | 1.0 |
| 2 | (banana, apple) | (apple,) | (banana, apple) | 0.666667 | 0.666667 | 0.666667 | 1.0 |
| 3 | (banana, apple) | (banana,) | (banana, apple) | 0.666667 | 1.0 | 0.666667 | 1.0 |
| 4 | (banana, apple) | (banana, mango) | (mango, banana, apple) | 0.666667 | 1.0 | 0.666667 | 1.0 |
| ... | ... | ... | ... | ... | ... | ... | ... |
| 73 | (strawberry,) | (banana, mango) | (mango, banana, strawberry) | 0.666667 | 1.0 | 0.666667 | 1.0 |
| 74 | (strawberry,) | (mango,) | (mango, strawberry) | 0.666667 | 1.0 | 0.666667 | 1.0 |
| 75 | (strawberry,) | (banana, strawberry) | (banana, strawberry) | 0.666667 | 0.666667 | 0.666667 | 1.0 |
| 76 | (strawberry,) | (strawberry, mango) | (mango, strawberry) | 0.666667 | 0.666667 | 0.666667 | 1.0 |
| 77 | (strawberry,) | (strawberry, banana, mango) | (mango, banana, strawberry) | 0.666667 | 0.666667 | 0.666667 | 1.0 |
78 rows × 7 columns