{ "cells": [ { "cell_type": "markdown", "id": "db3c2e94-9499-4d7d-bf0f-1ab892a61fa1", "metadata": {}, "source": [ "### ASSOCIATION RULES" ] }, { "cell_type": "markdown", "id": "7e642b4f-11cf-4bd5-bc7f-c97da0efc7e2", "metadata": {}, "source": [ "#### FACEPLATE DATASET" ] }, { "cell_type": "code", "execution_count": null, "id": "f82fe170-ad6b-42fc-962a-99c5466933ef", "metadata": {}, "outputs": [], "source": [ "pip install mlxtend" ] }, { "cell_type": "code", "execution_count": 2, "id": "a8e53481-02ba-450d-9d1f-ad2ecd8458cf", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import matplotlib.pylab as plt\n", "from mlxtend.frequent_patterns import apriori, association_rules" ] }, { "cell_type": "code", "execution_count": 4, "id": "c6b19ec8-aa53-4b0f-b2ab-3c3e5c8eacbd", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
RedWhiteBlueOrangeGreenYellow
Transaction
1110010
2010100
3011000
4110100
5101000
6011000
7101000
8111010
9111000
10000001
\n", "
" ], "text/plain": [ " Red White Blue Orange Green Yellow\n", "Transaction \n", "1 1 1 0 0 1 0\n", "2 0 1 0 1 0 0\n", "3 0 1 1 0 0 0\n", "4 1 1 0 1 0 0\n", "5 1 0 1 0 0 0\n", "6 0 1 1 0 0 0\n", "7 1 0 1 0 0 0\n", "8 1 1 1 0 1 0\n", "9 1 1 1 0 0 0\n", "10 0 0 0 0 0 1" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv(r'/Users/patriciaxufre/Documents/SBE - Disciplinas/2957 | ABA/2024-25/Datasets Examples/Faceplate.csv')\n", "df.set_index('Transaction', inplace = True)\n", "df" ] }, { "cell_type": "code", "execution_count": 24, "id": "97b4e61c-c99e-447c-b160-a9d9c4748fd2", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/opt/anaconda3/lib/python3.12/site-packages/mlxtend/frequent_patterns/fpcommon.py:161: DeprecationWarning: DataFrames with non-bool types result in worse computationalperformance and their support might be discontinued in the future.Please use a DataFrame with bool type\n", " warnings.warn(\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
antecedentsconsequentssupportconfidenceliftrepresentativityleveragezhangs_metricjaccardcertaintykulczynski
13(Red, White)(Green)0.20.5000002.5000001.00.121.0000000.5000000.3750000.750000
15(Green)(Red, White)0.21.0000002.5000001.00.120.7500000.5000001.0000000.750000
4(Green)(Red)0.21.0000001.6666671.00.080.5000000.3333331.0000000.666667
14(Green, White)(Red)0.21.0000001.6666671.00.080.5000000.3333331.0000000.666667
7(Orange)(White)0.21.0000001.4285711.00.060.3750000.2857141.0000000.642857
8(Green)(White)0.21.0000001.4285711.00.060.3750000.2857141.0000000.642857
12(Red, Green)(White)0.21.0000001.4285711.00.060.3750000.2857141.0000000.642857
2(Red)(Blue)0.40.6666671.1111111.00.040.2500000.5000000.1666670.666667
3(Blue)(Red)0.40.6666671.1111111.00.040.2500000.5000000.1666670.666667
0(Red)(White)0.40.6666670.9523811.0-0.02-0.1111110.444444-0.1111110.619048
1(White)(Red)0.40.5714290.9523811.0-0.02-0.1428570.444444-0.0714290.619048
5(Blue)(White)0.40.6666670.9523811.0-0.02-0.1111110.444444-0.1111110.619048
6(White)(Blue)0.40.5714290.9523811.0-0.02-0.1428570.444444-0.0714290.619048
10(White, Blue)(Red)0.20.5000000.8333331.0-0.04-0.2500000.250000-0.2500000.416667
11(Red, White)(Blue)0.20.5000000.8333331.0-0.04-0.2500000.250000-0.2500000.416667
9(Red, Blue)(White)0.20.5000000.7142861.0-0.08-0.4000000.222222-0.6666670.392857
\n", "
" ], "text/plain": [ " antecedents consequents support confidence lift \\\n", "13 (Red, White) (Green) 0.2 0.500000 2.500000 \n", "15 (Green) (Red, White) 0.2 1.000000 2.500000 \n", "4 (Green) (Red) 0.2 1.000000 1.666667 \n", "14 (Green, White) (Red) 0.2 1.000000 1.666667 \n", "7 (Orange) (White) 0.2 1.000000 1.428571 \n", "8 (Green) (White) 0.2 1.000000 1.428571 \n", "12 (Red, Green) (White) 0.2 1.000000 1.428571 \n", "2 (Red) (Blue) 0.4 0.666667 1.111111 \n", "3 (Blue) (Red) 0.4 0.666667 1.111111 \n", "0 (Red) (White) 0.4 0.666667 0.952381 \n", "1 (White) (Red) 0.4 0.571429 0.952381 \n", "5 (Blue) (White) 0.4 0.666667 0.952381 \n", "6 (White) (Blue) 0.4 0.571429 0.952381 \n", "10 (White, Blue) (Red) 0.2 0.500000 0.833333 \n", "11 (Red, White) (Blue) 0.2 0.500000 0.833333 \n", "9 (Red, Blue) (White) 0.2 0.500000 0.714286 \n", "\n", " representativity leverage zhangs_metric jaccard certainty kulczynski \n", "13 1.0 0.12 1.000000 0.500000 0.375000 0.750000 \n", "15 1.0 0.12 0.750000 0.500000 1.000000 0.750000 \n", "4 1.0 0.08 0.500000 0.333333 1.000000 0.666667 \n", "14 1.0 0.08 0.500000 0.333333 1.000000 0.666667 \n", "7 1.0 0.06 0.375000 0.285714 1.000000 0.642857 \n", "8 1.0 0.06 0.375000 0.285714 1.000000 0.642857 \n", "12 1.0 0.06 0.375000 0.285714 1.000000 0.642857 \n", "2 1.0 0.04 0.250000 0.500000 0.166667 0.666667 \n", "3 1.0 0.04 0.250000 0.500000 0.166667 0.666667 \n", "0 1.0 -0.02 -0.111111 0.444444 -0.111111 0.619048 \n", "1 1.0 -0.02 -0.142857 0.444444 -0.071429 0.619048 \n", "5 1.0 -0.02 -0.111111 0.444444 -0.111111 0.619048 \n", "6 1.0 -0.02 -0.142857 0.444444 -0.071429 0.619048 \n", "10 1.0 -0.04 -0.250000 0.250000 -0.250000 0.416667 \n", "11 1.0 -0.04 -0.250000 0.250000 -0.250000 0.416667 \n", "9 1.0 -0.08 -0.400000 0.222222 -0.666667 0.392857 " ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Frequent ItemSets\n", "itemsets = apriori(df, min_support = 0.2, use_colnames = True)\n", "# Association Rules\n", "rules = association_rules(itemsets, metric = 'confidence', min_threshold = 0.5)\n", "pd.DataFrame(rules.sort_values(by = ['lift'], ascending = False).drop(columns = ['antecedent support','consequent support','conviction']))\n", "\n", "\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "id": "ca7d7ef3-8080-45fe-84cb-2b4e460db23c", "metadata": {}, "source": [ "#### BOOK CLUB DATASET" ] }, { "cell_type": "code", "execution_count": 27, "id": "c3eb56d6-3b1c-4044-b70c-1ac81bd56384", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Seq#ID#GenderMRFFirstPurchChildBksYouthBksCookBks...ItalCookItalAtlasItalArtFlorenceRelated PurchaseMcodeRcodeFcodeYes_FlorenceNo_Florence
0125129714222011...0000054201
122901288210000...0000043201
2346113822756212...1000244301
34471228212000...0000051101
4551125710110000...0000053101
\n", "

5 rows × 24 columns

\n", "
" ], "text/plain": [ " Seq# ID# Gender M R F FirstPurch ChildBks YouthBks CookBks \\\n", "0 1 25 1 297 14 2 22 0 1 1 \n", "1 2 29 0 128 8 2 10 0 0 0 \n", "2 3 46 1 138 22 7 56 2 1 2 \n", "3 4 47 1 228 2 1 2 0 0 0 \n", "4 5 51 1 257 10 1 10 0 0 0 \n", "\n", " ... ItalCook ItalAtlas ItalArt Florence Related Purchase Mcode \\\n", "0 ... 0 0 0 0 0 5 \n", "1 ... 0 0 0 0 0 4 \n", "2 ... 1 0 0 0 2 4 \n", "3 ... 0 0 0 0 0 5 \n", "4 ... 0 0 0 0 0 5 \n", "\n", " Rcode Fcode Yes_Florence No_Florence \n", "0 4 2 0 1 \n", "1 3 2 0 1 \n", "2 4 3 0 1 \n", "3 1 1 0 1 \n", "4 3 1 0 1 \n", "\n", "[5 rows x 24 columns]" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv(r'/Users/patriciaxufre/Documents/SBE - Disciplinas/2957 | ABA/2024-25/Datasets Examples/CharlesBookClub.csv')\n", "df.head(5)" ] }, { "cell_type": "code", "execution_count": 29, "id": "c351597f-fca7-44de-bf56-b0d39d3a4371", "metadata": {}, "outputs": [], "source": [ "ignore = ['Seq#', 'ID#', 'Gender', 'M', 'R', 'F', 'FirstPurch', 'Related Purchase', 'Mcode', 'Rcode', 'Fcode', 'Yes_Florence', 'No_Florence']\n", "books = df.drop(columns = ignore)\n", "books[books>0] = 1 # it is a binary variable saying if that type of book was bought in the past\n" ] }, { "cell_type": "code", "execution_count": 31, "id": "ee121d6a-10f6-4019-98c2-eab67958f95a", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ChildBksYouthBksCookBksDoItYBksRefBksArtBksGeogBksItalCookItalAtlasItalArtFlorence
001100000000
100000000000
211101011000
300000000000
400000000000
\n", "
" ], "text/plain": [ " ChildBks YouthBks CookBks DoItYBks RefBks ArtBks GeogBks ItalCook \\\n", "0 0 1 1 0 0 0 0 0 \n", "1 0 0 0 0 0 0 0 0 \n", "2 1 1 1 0 1 0 1 1 \n", "3 0 0 0 0 0 0 0 0 \n", "4 0 0 0 0 0 0 0 0 \n", "\n", " ItalAtlas ItalArt Florence \n", "0 0 0 0 \n", "1 0 0 0 \n", "2 0 0 0 \n", "3 0 0 0 \n", "4 0 0 0 " ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "books.head(5)" ] }, { "cell_type": "code", "execution_count": 35, "id": "43eafcb8-1579-46e6-af4e-c2328c40643a", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/opt/anaconda3/lib/python3.12/site-packages/mlxtend/frequent_patterns/fpcommon.py:161: DeprecationWarning: DataFrames with non-bool types result in worse computationalperformance and their support might be discontinued in the future.Please use a DataFrame with bool type\n", " warnings.warn(\n" ] } ], "source": [ "# Frequent itemsets and Rules\n", "itemsets = apriori(books, min_support = 0.05, use_colnames = True)\n", "rules = association_rules(itemsets, metric = 'confidence', min_threshold = 0.5)" ] }, { "cell_type": "code", "execution_count": 37, "id": "418d33c4-150e-48b3-80db-ab28ec5694bf", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
antecedentsconsequentssupportconfidenceliftrepresentativityleveragezhangs_metricjaccardcertaintykulczynski
64(YouthBks, RefBks)(CookBks, ChildBks)0.055250.6800002.8099171.00.0355880.7010800.2061570.5778360.454153
73(DoItYBks, RefBks)(CookBks, ChildBks)0.061250.6621622.7362071.00.0388650.6992070.2241540.5543040.457631
60(DoItYBks, YouthBks)(CookBks, ChildBks)0.067000.6489102.6814481.00.0420140.6992660.2407910.5368210.462885
80(GeogBks, RefBks)(CookBks, ChildBks)0.050250.6146792.5399951.00.0304670.6602760.1837290.4916610.411162
69(GeogBks, YouthBks)(CookBks, ChildBks)0.063250.6052632.5010871.00.0379610.6702110.2233010.4792390.433313
77(DoItYBks, GeogBks)(CookBks, ChildBks)0.060500.5990102.4752481.00.0360580.6629590.2141590.4709890.424505
65(GeogBks, ChildBks, CookBks)(YouthBks)0.063250.5776262.4244521.00.0371620.6597820.2223200.4455210.421552
72(CookBks, ChildBks, RefBks)(DoItYBks)0.061250.5917872.3230131.00.0348830.6352760.2062290.4522470.416110
47(DoItYBks, GeogBks)(YouthBks)0.054500.5396042.2648641.00.0304370.6212150.1913960.3956070.384178
61(CookBks, ChildBks, RefBks)(YouthBks)0.055250.5338162.2405731.00.0305910.6176080.1928450.3880100.382858
56(DoItYBks, CookBks, ChildBks)(YouthBks)0.067000.5244622.2013091.00.0365640.6256520.2240800.3757290.402840
59(CookBks, ChildBks, YouthBks)(DoItYBks)0.067000.5583332.1916911.00.0364300.6178770.2177090.4073580.410668
34(ChildBks, RefBks)(DoItYBks)0.071000.5536062.1731351.00.0383280.6192550.2275640.4010150.416155
76(GeogBks, ChildBks, CookBks)(DoItYBks)0.060500.5525112.1688381.00.0326050.6051920.1991770.3995460.395000
19(GeogBks, ChildBks)(YouthBks)0.075500.5162392.1667971.00.0406560.6307340.2443370.3649350.416567
45(GeogBks, CookBks)(YouthBks)0.080250.5136002.1557191.00.0430230.6353990.2553700.3614700.425216
63(ChildBks, YouthBks, RefBks)(CookBks)0.055250.8911292.1447151.00.0294890.5690170.1308470.8137370.512051
17(ChildBks, YouthBks)(DoItYBks)0.080250.5440682.1356931.00.0426740.6237750.2492240.3882160.429541
51(CookBks, RefBks)(DoItYBks)0.074500.5330952.0926191.00.0388990.6069520.2328130.3734920.412769
28(RefBks)(CookBks, ChildBks)0.103500.5054952.0888201.00.0539500.6554680.3015290.3476180.466590
70(DoItYBks, CookBks, RefBks)(ChildBks)0.061250.8221482.0866691.00.0318970.5626880.1503990.7065140.488802
15(YouthBks)(CookBks, ChildBks)0.120000.5036732.0812921.00.0623440.6820210.3331020.3452150.499770
71(DoItYBks, ChildBks, RefBks)(CookBks)0.061250.8626762.0762361.00.0317490.5579750.1440330.7650570.505044
24(CookBks, ChildBks)(DoItYBks)0.127750.5278932.0721981.00.0661010.6826130.3462060.3665110.514682
25(DoItYBks)(CookBks, ChildBks)0.127750.5014722.0721981.00.0661010.6942920.3462060.3423110.514682
\n", "
" ], "text/plain": [ " antecedents consequents support confidence \\\n", "64 (YouthBks, RefBks) (CookBks, ChildBks) 0.05525 0.680000 \n", "73 (DoItYBks, RefBks) (CookBks, ChildBks) 0.06125 0.662162 \n", "60 (DoItYBks, YouthBks) (CookBks, ChildBks) 0.06700 0.648910 \n", "80 (GeogBks, RefBks) (CookBks, ChildBks) 0.05025 0.614679 \n", "69 (GeogBks, YouthBks) (CookBks, ChildBks) 0.06325 0.605263 \n", "77 (DoItYBks, GeogBks) (CookBks, ChildBks) 0.06050 0.599010 \n", "65 (GeogBks, ChildBks, CookBks) (YouthBks) 0.06325 0.577626 \n", "72 (CookBks, ChildBks, RefBks) (DoItYBks) 0.06125 0.591787 \n", "47 (DoItYBks, GeogBks) (YouthBks) 0.05450 0.539604 \n", "61 (CookBks, ChildBks, RefBks) (YouthBks) 0.05525 0.533816 \n", "56 (DoItYBks, CookBks, ChildBks) (YouthBks) 0.06700 0.524462 \n", "59 (CookBks, ChildBks, YouthBks) (DoItYBks) 0.06700 0.558333 \n", "34 (ChildBks, RefBks) (DoItYBks) 0.07100 0.553606 \n", "76 (GeogBks, ChildBks, CookBks) (DoItYBks) 0.06050 0.552511 \n", "19 (GeogBks, ChildBks) (YouthBks) 0.07550 0.516239 \n", "45 (GeogBks, CookBks) (YouthBks) 0.08025 0.513600 \n", "63 (ChildBks, YouthBks, RefBks) (CookBks) 0.05525 0.891129 \n", "17 (ChildBks, YouthBks) (DoItYBks) 0.08025 0.544068 \n", "51 (CookBks, RefBks) (DoItYBks) 0.07450 0.533095 \n", "28 (RefBks) (CookBks, ChildBks) 0.10350 0.505495 \n", "70 (DoItYBks, CookBks, RefBks) (ChildBks) 0.06125 0.822148 \n", "15 (YouthBks) (CookBks, ChildBks) 0.12000 0.503673 \n", "71 (DoItYBks, ChildBks, RefBks) (CookBks) 0.06125 0.862676 \n", "24 (CookBks, ChildBks) (DoItYBks) 0.12775 0.527893 \n", "25 (DoItYBks) (CookBks, ChildBks) 0.12775 0.501472 \n", "\n", " lift representativity leverage zhangs_metric jaccard certainty \\\n", "64 2.809917 1.0 0.035588 0.701080 0.206157 0.577836 \n", "73 2.736207 1.0 0.038865 0.699207 0.224154 0.554304 \n", "60 2.681448 1.0 0.042014 0.699266 0.240791 0.536821 \n", "80 2.539995 1.0 0.030467 0.660276 0.183729 0.491661 \n", "69 2.501087 1.0 0.037961 0.670211 0.223301 0.479239 \n", "77 2.475248 1.0 0.036058 0.662959 0.214159 0.470989 \n", "65 2.424452 1.0 0.037162 0.659782 0.222320 0.445521 \n", "72 2.323013 1.0 0.034883 0.635276 0.206229 0.452247 \n", "47 2.264864 1.0 0.030437 0.621215 0.191396 0.395607 \n", "61 2.240573 1.0 0.030591 0.617608 0.192845 0.388010 \n", "56 2.201309 1.0 0.036564 0.625652 0.224080 0.375729 \n", "59 2.191691 1.0 0.036430 0.617877 0.217709 0.407358 \n", "34 2.173135 1.0 0.038328 0.619255 0.227564 0.401015 \n", "76 2.168838 1.0 0.032605 0.605192 0.199177 0.399546 \n", "19 2.166797 1.0 0.040656 0.630734 0.244337 0.364935 \n", "45 2.155719 1.0 0.043023 0.635399 0.255370 0.361470 \n", "63 2.144715 1.0 0.029489 0.569017 0.130847 0.813737 \n", "17 2.135693 1.0 0.042674 0.623775 0.249224 0.388216 \n", "51 2.092619 1.0 0.038899 0.606952 0.232813 0.373492 \n", "28 2.088820 1.0 0.053950 0.655468 0.301529 0.347618 \n", "70 2.086669 1.0 0.031897 0.562688 0.150399 0.706514 \n", "15 2.081292 1.0 0.062344 0.682021 0.333102 0.345215 \n", "71 2.076236 1.0 0.031749 0.557975 0.144033 0.765057 \n", "24 2.072198 1.0 0.066101 0.682613 0.346206 0.366511 \n", "25 2.072198 1.0 0.066101 0.694292 0.346206 0.342311 \n", "\n", " kulczynski \n", "64 0.454153 \n", "73 0.457631 \n", "60 0.462885 \n", "80 0.411162 \n", "69 0.433313 \n", "77 0.424505 \n", "65 0.421552 \n", "72 0.416110 \n", "47 0.384178 \n", "61 0.382858 \n", "56 0.402840 \n", "59 0.410668 \n", "34 0.416155 \n", "76 0.395000 \n", "19 0.416567 \n", "45 0.425216 \n", "63 0.512051 \n", "17 0.429541 \n", "51 0.412769 \n", "28 0.466590 \n", "70 0.488802 \n", "15 0.499770 \n", "71 0.505044 \n", "24 0.514682 \n", "25 0.514682 " ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Display 25 rules with highest lift\n", "rules.sort_values(by = ['lift'], ascending = False). drop(columns = ['antecedent support', 'consequent support','conviction']).head(25) \n", "\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "id": "7a15b6fc-b439-4765-a76f-f920579d4e9f", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python [conda env:base] *", "language": "python", "name": "conda-base-py" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.7" } }, "nbformat": 4, "nbformat_minor": 5 }