4. 연관 규칙 분석 결과를 필터링해보기

    # itemsets의 제품 개수에 따른 필터링을 위해 length 열을 추가
    # 결과를 frequent_itemsets라는 이름으로 생성
    >>> frequent_itemsets = apriori(df, min_support = 0.6, use_colnames = True)
    >>> frequent_itemsets['length'] = frequent_itemsets['itemsets'].apply(lambda x: len(x))   # length 추가
    >>> frequent_itemsets
       support                itemsets  length
    ------------------------------------------
    0      0.6                 (Apple)       1
    1      0.8                 (Beans)       1
    2      0.6                (Cookie)       1
    3      0.8                  (Eggs)       1
    4      0.6                  (Milk)       1
    5      0.6                (Yogurt)       1
    6      0.6           (Eggs, Apple)       2
    7      0.6         (Cookie, Beans)       2
    8      0.6           (Eggs, Beans)       2
    9      0.6         (Yogurt, Beans)       2
    10     0.6          (Cookie, Eggs)       2
    11     0.6   (Eggs, Cookie, Beans)       3
    
    # 필터링: 패턴 내 아이템은 두 개이고, 최소 지지도는 60% 이상인 패턴만 필터링
    # frequent_itemsets에서 특정 조건을 만족시키는 행들을 선택
    >>> frequent_itemsets[(frequent_itemsets['length'] == 2) & (frequent_itemsets['support'] >= 0.6)]
       support         itemsets   length
    ------------------------------------
    6      0.6     (Eggs, Apple)       2
    7      0.6   (Cookie, Beans)       2
    8      0.6     (Eggs, Beans)       2
    9      0.6   (Yogurt, Beans)       2
    10     0.6    (Cookie, Eggs)       2
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.