环境
python版本:3.5
数据来源
数据来自51CTO网站的分享,点此下载
关联规则
所谓关联规则,就是指现实中同时发生两种不同事情之间的相关联程度,具体分析可以参考这篇博客,讲的很清晰
数据分析
这是数据文件
数据文件
其中movies中电影信息的内容如图所示
movies.dat
每行分别为电影id,电影名字,电影类型,每项之间用::分隔,rating.dat为收集的用户打分记录,users.dat为用户id对应的用户信息,personalRating.txt为个人打分,用来找到规律后为个人推荐电影,ratings.dat文件内容如图所示
ratings.dat
其中分别为用户id,电影id,评分(1-5分),评分时间,总共一百万行多点的数据。我设置评分3分以上算是喜欢,最小支持度为0.2,最小置信度为0.5,下面是代码实现
# -*- coding: utf-8 -*-
"""
Apriori exercise.
Created on Sun Oct 26 11:09:03 2017
@author: FWW
"""
import time
def createC1( dataSet ):
'''
构建初始候选项集的列表,即所有候选项集只包含一个元素,
C1是大小为1的所有候选项集的集合
'''
C1 = []
for transaction in dataSet:
for item in transaction:
if [ item ] not in C1:
C1.append( [ item ] )
C1.sort()
return list(map( frozenset, C