基于Apriori算法电影推荐----数据挖掘、智能推荐,分析用户的电影喜好,关联规则

基于Apriori算法电影推荐----数据挖掘、智能推荐

本文是基于Apriori算法分析100721条用户的观影记录,并分析用户的观看喜好,以求精准达到推荐。 数据下载地址
1、数据导入

import pandas as pd 
data = pd.read_excel('电影推荐系统.xlsx')
data

基于Apriori算法电影推荐----数据挖掘、智能推荐,分析用户的电影喜好,关联规则_第1张图片
2、使用pivot_table(数据透视表)函数进行数据透视分析。行索引是用户。列索引是电影名称。

user_movie = data.pivot_table(index = '用户编号', columns = '名称', values = '评分')

基于Apriori算法电影推荐----数据挖掘、智能推荐,分析用户的电影喜好,关联规则_第2张图片
3、通过mlxtend库来实现Apriori算法

mlxtend库安装法:通过PIP安装法来安装mlxtend库,以Windows系统为例,具体方法是:
通过Win + R组合键调出运行框,
输入cmd后回车,
然后在弹出框中输入 pip install mlxtend 后按一下Enter回车键

Jupyter Notebook编辑器中安装:
只需要在代码框中输入!pip instll mlxtend然后运行该行代码框即可。

注意:使用mlxtend库来实现Apriori算法的数据集必须是bool类型的True或者是False,通过以下代码更换数据类型

bool_data = user_movie.notnull()
bool_data

基于Apriori算法电影推荐----数据挖掘、智能推荐,分析用户的电影喜好,关联规则_第3张图片
4、实现Apriori算法,进行数据分析

from mlxtend.frequent_patterns import apriori
items = apriori( bool, min_support=0.2, use_colnames=True)

from mlxtend.frequent_patterns import association_rules
relues = association_rules(items, min_threshold=0.7)
relues

基于Apriori算法电影推荐----数据挖掘、智能推荐,分析用户的电影喜好,关联规则_第4张图片
书写规则

for i,j in relues.iterrows():
    X = j['antecedents']
    Y = j['consequents']
    x = ','.join([item for item in X])
    y = ','.join([item for item in Y])
    print(x + '->' + y)

基于Apriori算法电影推荐----数据挖掘、智能推荐,分析用户的电影喜好,关联规则_第5张图片
以上就是我们挖掘出的强关联规则,—>前的为前件,—>后的为后件。
基于Apriori算法电影推荐----数据挖掘、智能推荐,分析用户的电影喜好,关联规则_第6张图片

你可能感兴趣的:(数据挖掘,机器学习,aprior,算法,python,数据挖掘,关联规则)