작업 2유형 : Apriori 연관분석

SOOYEON·2022년 6월 23일
0

빅데이터분석기사

목록 보기
29/36

Association Rule

# module
import warnings 
warnings.filterwarnings('ignore')
import pandas as pd
import numpy as np 
import matplotlib.pyplot as plt 
from apyori import apriori

# data
store_data = pd.read_csv('store_data.csv', header = None) # header = None
store_data.head()

min_support

전체 항목 7500 중에 7일에 5번 이상 구매된 항목
35 / 7500 = 0.0045

min_confidence

20% = 0.2

min_lift

min_length

최소 item 단위

records = []
for i in range(0, 7501):
    records.append([str(store_data.values[i,j]) for j in range(0, 20)])

association_rules = apriori(records, min_support = 0.0045, min_confidence = 0.2, min_lift = 3, min_length=2)
association_result = list(association_rules);

for item in association_result:
    print(item[0])
    items = [x for x in item[0]]
    
    print(items[0] + " -> " + items[1])
    print("support = " + str(item[1]))
    print("confidence = " + str(item[2][0][2]))
    print("lift = " + str(item[2][0][3]))
    print()
# result
frozenset({'pasta', 'escalope', 'nan'})
pasta -> escalope
support = 0.005865884548726837
confidence = 0.3728813559322034
lift = 4.700811850163794

Ref

Link
data

0개의 댓글