iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >如何利用Python进行商品的亲和性分析
  • 809
分享到

如何利用Python进行商品的亲和性分析

2023-06-15 13:06:17 809人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章将为大家详细讲解有关如何利用python进行商品的亲和性分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。01数据挖掘简介数据挖掘旨在让计算机根据已有数据做出决策。决策可以是预测明年的销量,人口的

这篇文章将为大家详细讲解有关如何利用python进行商品的亲和性分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

01数据挖掘简介

数据挖掘旨在让计算机根据已有数据做出决策。决策可以是预测明年的销量,人口的数目,拦截垃圾邮件,检测网站的语言。到目前为止,数据挖掘已经有很多的应用,即使这样很多新的应用领域也在不断出现。

数据挖掘涉及到算法,最优策略,统计学,工程学和计算机科学相关领域的知识。除此之外我们还会用到语言学,神经科学,城市规划等其他领域的概念或知识。想要充分发挥数据挖掘的威力,算法肯定是必备的。(在这里推荐读者去刷一刷LeetCode)

一般来说数据挖掘有这三个基本步骤:1、创建数据集。数据集能直接反应一些真实事件;2、选择算法。选择一个合适的算法才能更好的对数据进行处理;3、优化算法。每种数据挖掘算法都有参数,它们或是算法自身包含的,或是使用者添加的,这些参数会影响算法的具体决策。

02亲和性分析案例

现在让我们用一个例子说明。不知道你逛超市的时候,是否发现超市里面基本上都是按照商品的种类来分区域的,然而有些东西是存在例外的,一件商品的旁边摆放着不一样种类的商品。不知道你是否有发现这个现象,有没有对此感到不解。这边我想跟你说的是,这种摆放也是有道理的,这个道理是商品之间的亲和性!

前置知识:

(1)defaultdict(int):初始化为 0     (2)defaultdict(float):初始化为 0.0    (3)defaultdict(str):初始化为 ''

这里的defaultdict(function_factory)构建的是一个类似dictionary的对象其中keys的值,自行确定赋值,但是values的类型,是function_factory的类实例而且具有默认值。比如default(int)则创建一个类似dictionary对象里面任何的values都是int的实例,而且就算是一个不存在的key,  d[key] 也有一个默认值,这个默认值是int()的默认值0。

03代码实现

现在进行代码部分:

import  numpy as np from collections import defaultdict dataset_filename = "affinity_dataset.txt" features = ["bread","milk","cheese","apple","banana"]  #猜一下这个是干嘛用的 X = np.loadtxt(dataset_filename) print(X[:5])   #打印前五行的购物信息

如何利用Python进行商品的亲和性分析

统计一下购买苹果和香蕉的人数:

num_apple_purchases = 0 # 初始化一个购买苹果人数的变量 for sample in X:     if sample[3] == 1:         num_apple_purchases+=1 print("{0} people bought Apples ".fORMat(num_apple_purchases)) num_banana_purchases = 0 for sample in X:     if sample[4] == 1:         num_banana_purchases += 1 print("{0} people bought banana".format(num_banana_purchases))

如何利用Python进行商品的亲和性分析

现在为了计算规则的置信度还有支持度,我们可以用字典的形式来存放计算结果:

valid_rules = defaultdict(int) invalid_rules = defaultdict(int) num_occurances = defaultdict(int) for sample in X:     for premise in range(4):         if sample[premise] ==0 :             continue         num_occurances[premise] +=1  #当顾客有购买物品时key对应的时value变为1         for conclusion in range(4):             if premise == conclusion:  #访问同一个key 的时候是没有意义的直接跳过                 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] = valid_rules[rule]/num_occurances[premise]

声明一个函数,接收的参数有:分别作为前提条件和结论的特征索引值、支持度字典、置信度字典以及特征列表。

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)])) premise = 1 conclusion = 3 features = ["bread","milk","cheese","apple","banana"] print_rule(premise,conclusion,support,confidence,features)  from  operator import itemgetter sorted_support = sorted(support.items(),key=itemgetter(1),reverse=True)

排序完成后,就可以输出支持度最高的前5条规则:

for index in range(5):     print("Rule #{0}".format(index+1))     premise,conclusion = sorted_support[index][0]     print_rule(premise,conclusion,support,confidence,features)

如何利用Python进行商品的亲和性分析

关于“如何利用Python进行商品的亲和性分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: 如何利用Python进行商品的亲和性分析

本文链接: https://www.lsjlt.com/news/280357.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何利用Python进行商品的亲和性分析
    这篇文章将为大家详细讲解有关如何利用Python进行商品的亲和性分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。01数据挖掘简介数据挖掘旨在让计算机根据已有数据做出决策。决策可以是预测明年的销量,人口的...
    99+
    2023-06-15
  • 使用Python对零售商品进行数据分析
    目录一、主要内容:二、使用工具三、数据来源四、字段含义五、数据清洗1、查看总体数据特征2、修改列名3、检验缺失数据4、查看并转换数据类型5、查看异常值并删除六、数据分析1、总体销量数...
    99+
    2024-04-02
  • JavaScript如何利用performance.timing进行性能分析
    小编给大家分享一下JavaScript如何利用performance.timing进行性能分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!performance.timing:利用performance.timing进行...
    99+
    2023-06-03
  • 教你如何利用python进行数值分析
    目录一、准备二、三次样条插值三、最小二乘拟合四、拉格朗日乘子法一、准备 噪声是在拟合过程中常用的干扰手段,常用的噪声: 1.统一分布 U(a,b) f ( x ) = { 1 i f...
    99+
    2024-04-02
  • 详解如何利用Python进行客户分群分析
    目录导入数据和python库分离新老客户按客户ID排序,然后是日期定义一些函数创建群组转换为群组百分比可视化每个电子商务数据分析师必须掌握的一项数据聚类技能 如果你是一名在电子商务公...
    99+
    2023-02-24
    Python实现客户分群分析 Python客户分群分析 Python客户分析
  • 如何利用spark进行数据分析
    使用Spark进行数据分析可以遵循以下步骤: 准备数据:将数据加载到Spark中,可以使用Spark的DataFrame API...
    99+
    2024-04-02
  • 利用Python进行数据分析_Panda
    申明:本系列文章是自己在学习《利用Python进行数据分析》这本书的过程中,为了方便后期自己巩固知识而整理。 import pandas as pd import numpy as np file = 'D:\example.xls'...
    99+
    2023-01-30
    数据 Python _Panda
  • 如何用Python对数据进行相关性分析
    这期内容当中小编将会给大家带来有关如何用Python对数据进行相关性分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在进行数据分析时,我们所用到的数据往往都不是一维的,而这些数据在分析时难度就增加了不少...
    99+
    2023-06-16
  • 如何进行Linux性能分析和优化
    如何进行Linux性能分析和优化,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。前言一般互联网的项目都是部署在linux服务器上的,如果linux服务器出了问题,那么咱们平时...
    99+
    2023-06-15
  • 如何进行Linux的性能分析
    今天就跟大家聊聊有关如何进行Linux的性能分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。当你登陆一台 Linux 服务器之后,因为一个问题要做性能分析时:你会在第 1 分钟内做...
    99+
    2023-06-16
  • 如何利用Google Analytics进行数据分析
    利用Google Analytics进行数据分析涉及以下几个关键步骤:1、设置跟踪代码,2、定义目标和转化,3、监测流量来源,4、分析用户行为,5、创建自定义报告,6、设置事件跟踪。在开始使用Google Analytics之前,你需要在网...
    99+
    2023-10-29
    数据 Google Analytics
  • 如何进行性能分析profiling
    如何进行性能分析profiling,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 使用mysql自带的工具pro...
    99+
    2024-04-02
  • 如何利用VisualVM对高并发项目进行性能分析
    如何利用VisualVM对高并发项目进行性能分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。前面在学习JVM的知识的时候,一般都需要利用相关参数进行分析,而分析一般都需要用到...
    99+
    2023-06-16
  • 怎么利用python进行数值分析
    小编给大家分享一下怎么利用python进行数值分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、准备噪声是在拟合过程中常用的干扰手段,常用的噪声:统一分布 U(a,b)f ( x ) = { 1 i f a ≤ x &...
    99+
    2023-06-15
  • PHP中如何进行商业智能和数据分析?
    随着互联网的发展和数据量的不断增加,商业智能和数据分析变得越来越重要。在这个无所不在的数据时代,很多企业也开始关注如何利用数据来做出更明智的商业决策。而PHP,作为最常用的Web编程语言之一,也可以用来实现商业智能和数据分析的任务。本文将详...
    99+
    2023-05-21
    数据分析 商业智能 PHP
  • 如何进行Java和Python的Web开发分析
    今天就跟大家聊聊有关如何进行Java和Python的Web开发分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在Java里面有一种服务端的软件组件技术,叫做Servlet,其实它的...
    99+
    2023-06-04
  • 怎么利用Python进行客户分群分析
    这篇文章主要讲解了“怎么利用Python进行客户分群分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么利用Python进行客户分群分析”吧!导入数据和python库import ...
    99+
    2023-07-05
  • 如何用python进行数据分析
    Python是一个非常强大的数据分析工具,它提供了丰富的库和函数来处理、分析、可视化数据,并在各个领域得到了广泛应用。本文将介绍如何使用Python进行数据分析。以下按照流程简述如下: 数据预处理 数据预处理通常是数据分析的第一步,这个过程...
    99+
    2023-09-08
    信息可视化
  • 如何用Python进行大数据挖掘和分析
    今天就跟大家聊聊有关如何用Python进行大数据挖掘和分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。大数据无处不在。在时下这个年代,不管你喜欢与否,在运营一个成功的商业的过程中都...
    99+
    2023-06-05
  • 怎样用Python进行相关性分析
    今天就跟大家聊聊有关怎样用Python进行相关性分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1.相关和因果是一回事吗相关性不等于因果。用x1和x2作为两个变量进行解释,相关意味...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作