如何从两组项目集生成关联规则?

时间:2019-03-19 05:52:00

标签: python csv dataframe associations apriori

我想生成以下项目集的关联规则。 :

df1
    Age,AL,SEX,DIAB,SMOK,CHOL,LAD,RCA,LM
    65,0,M,n,y,220,80,75,20
    45,0.2,F,n,n,300,90,35,35
    66,-1,F,y,y,200,90,80,20
    70,0.2,F,n,y,220,40,85,15
    80,1.1,M,y,y,200,90,90,25

但是首先,我想将项目集分为两组,并从这两组中创建关联规则。 例如 第一组:

(Age, Sex, SMOKE, DIAB)

第二组:

(AL, CHOL, LAD, RCA, LM)

这种情况是为了防止一个组中的两个项目发生关联,而是与另一个组产生关联。

我用来从所有项目集中生成关联规则的代码是

records = []
for i in range(0, len(df1)):
    records.append([str(df1.values[i,j]) for j in range(0, len(df1.columns))])
te = TransactionEncoder()
te_ary = te.fit(records).transform(records)
df = pd.DataFrame(te_ary, columns=te.columns_,)
frequent_itemsets = apriori(df, min_support=0.01, use_colnames= True)
rules = association_rules(frequent_itemsets, metric= "confidence", min_threshold = 0.7 )

如何使用apriori对分组的项目集执行相同的操作?

0 个答案:

没有答案