>df# 주문당 제품 리스트
>product_list_per_order=df.groupby('order_id')['product_id'].apply(list).tolist()# 주문당 제품 리스트 데이터 -> one hot encoding 데이터
>frommlxtend.preprocessingimportTransactionEncoder>encoder=TransactionEncoder# 인스턴스화
>onehot_df=encoder.fit(product_list_per_order).transform(product_list_per_order)# 결과: ndarray
>onehot_df=pd.DataFrame(onehot_df,columns=encoder.columns_)>onehot_df.head()# 매우 희소함 (sparse)
>frommlxtend.frequent_patternsimport*>frequent_item_df=apriori(onehot_df,min_support=0.003)# 0.3% 이상 구매한 상품만 대상으로 함
>result=association_rules(frequent_item_df,metric='confidence',min_threshold=0.1)>result[['antecedents','consquents','support','confidence']].sort_values(by='confidence',ascending=False)
출처: https://arxiv.org/pdf/2209.14734
※ DiGress
a discrete denoising diffusion model for generating graphs with categorical node and edge attributes
...
댓글남기기