Python数据挖掘入门与实践一:计算支持度和置信度
来源:互联网 发布:免费u盘数据恢复 编辑:程序博客网 时间:2024/06/05 19:25
import numpy as np
from collections import defaultdict
#First,how many rows contain our premise:that a person is buying apples
'''num_apple_purchases=0
for sample in X:
if sample[3]==1: #this person bought apples
num_apple_purchases+=1
print num_apple_purchases'''
def calS(X,n_features):
#print n_features
#print X[:5]#every row is a purchase record,evey column is a product
#five kinds of product
#bread,milk,cheese,apple and banana
valid_rules=defaultdict(int)
invalid_rules=defaultdict(int)
num_occurances=defaultdict(int)
print X
for sample in X:
for premise in range(5):
if sample[premise]==0:continue
num_occurances[premise]+=1
for conclusion in range(n_features):
if premise==conclusion:continue
if sample[conclusion]==1:
valid_rules[(premise,conclusion)] += 1
else:
invalid_rules[(premise,conclusion)] += 1
support=valid_rules
confidence=defaultdict(float)
for premise,conclusion in valid_rules.keys():
rule=(premise,conclusion)
confidence[rule]=float(valid_rules[rule])/num_occurances[premise] #这里需要将valid_rules的规则条目数从int转成float
return support,confidence
def print_rule(premise,conclusion,support,confidence,features):
premise_name=features[premise]
conclusion_name=features[conclusion]
print("Rule:If a person buys {0} they will also buy {1}".format(premise_name,conclusion_name))
print("-Support:{0}".format(support[(premise,conclusion)]))
print("-Confidence:{0:.3f}".format(confidence[(premise,conclusion)]))
if __name__ == '__main__':
X=np.loadtxt("affinity_dataset.txt")
n_samples,n_features=X.shape
premise=1
conclusion=3
support,confidence=calS(X,n_features)
features = ["bread", "milk", "cheese", "apples", "bananas"]
print support,confidence
print_rule(premise,conclusion,support,confidence,features)
0 0
- Python数据挖掘入门与实践一:计算支持度和置信度
- 数据挖掘中的支持度 置信度 期望置信度 提升度
- 数据挖掘关联分析中的支持度、置信度和提升度
- 数据挖掘关联分析中的支持度、置信度和提升度
- 支持度与置信度
- 支持度与置信度
- 支持度和置信度
- 支持度和置信度
- 【python】《Python数据挖掘入门与实践》实验环境搭建
- Python数据挖掘入门与实践(一)——亲和性分析
- 支持度 置信度
- 支持度(support)和置信度(confidence)
- 抽样置信度计算
- 《python数据挖掘入门与实践》笔记1
- 《python数据挖掘入门与实践》笔记2
- 《python数据挖掘入门与实践》“电影推荐” 笔记3
- 置信度和置信区间
- 关联分析中的支持度、置信度和提升度
- App移动端项目管理
- C++作业五
- 给ubuntu sda1扩容
- 通过 EL + servlet显示投票结果
- Android 动态添加Fragment
- Python数据挖掘入门与实践一:计算支持度和置信度
- 微信开发文档
- 接口自动化测试项目的一些知识整理
- java项目案例开发-第一章 Acess,MySQL,Tomcat
- 友盟第三方qq登陆
- 数据访问层
- C语言学习历程——编程练习3——02
- Android 5.0新控件 FloatingActionButton | 悬浮按钮 介绍及使用详情
- c++程序设计原理与实践 第四章简单练习