基于Python实现大型家用电器和电子产品在线商店购买数据分析【500010098】

导入模块

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

获取数据

df= pd.read_csv( r"./data/kz.csv",sep=',')

数据描述

该数据包含2020年4月至2020年11月从大型家用电器和电子产品在线商店购买的数据。

数据说明

  • event_time:行为类别
  • event_type:行为类别
  • product_id :产品编号
  • category_id :产品的类别ID
  • category_code:产品的类别分类法(代码名称)
  • brand:品牌名称
  • price:产品价格
  • user_id:用户ID

数据信息

df.shape

image.png

df.info()

image.png

df.head()

image.png

数据处理

# 对比每一列数据大小,判断有无缺失值
df.isnull().any()

image.png

# 因为数据较大,删除掉缺失数据
df=df.dropna()
# 判断有无重复值
df.duplicated()
# 删除重复值
df=df.drop_duplicates()

image.png

df.shape

image.png

df.describe()

image.png
产品平均价格为250元,中位数为150元,为左偏型数据分布

# 修改时间列数据类型 预计时间:5~6分钟
df['event_time']=df['event_time'].apply(pd.to_datetime) 
df['month'] = df.event_time.values.astype('datetime64[M]')df.info()

image.png

数据处理

进行用户消费趋势分析(按月)

df_month=df.groupby(['month'])
每月的消费总金额

image.png
由上图可知:

  1. 消费金额在4到8月总体呈上升形态
  2. 8月单月消费总额最高,超过2500万元
  3. 自8月以后消费出现明显下滑趋势
每月的消费人数

image.png
用户数量变化趋势同消费总额变化趋势较为一致
image.png
上下两图对比可知,在4到8月两图总体呈上升变化,均在8月份达到最高值,而后开始显现下滑趋势。
特别关注点在7月份,两图中,7月皆为拐点位置。图一中7月后增势更加明显,图二中7月后消费人数增长减缓。两者结合可知,7月用户购买单价有所提高。

进行品牌消费情况分析

各品牌产品消费总金额

image.png
销售前20名品牌中,三星和苹果表现尤为强势,远超其他品牌

各品牌用户数量

image.png
在用户数量上,三星一枝独秀,遥遥领先于其他品牌。接近为苹果用户数的三倍,而两者销售额约6%,可见苹果人均用户消费远大于三星用户人均消费。 另外上述两幅图数据变化趋势,明显也满足二八原则。

用户个体消费分析

用户消费金额、消费次数的描述性统计
df_=df.copy()
df_.index=df_['event_time']df_user=df_["2020-04":"2020-11"].groupby('user_id')
df_user.sum().describe()

image.png

df_user.count().describe()

image.png
用户平均消费1117元,50%用户消费447元,差距较大。说明大部分用户消费较低,小部分用户发生了高消费。

用户消费次数、消费金额散点图

image.png

用户消费金额分布图

image.png
从直方图可知,用户消费金额,绝大多数呈现集中趋势

用户消费次数分布图

image.png
使用切比雪夫定理过滤掉异常值,计算95%的数据分布情况

用户累计消费金额占比

image.png
根据用户分组计数后的描述性统计结果,共有89195位客户.结合上图,可知: 50%客户仅贡献了约10%的消费金额;8万名累计消费总额占比仍未超过一半,累计占比约为45%。

用户消费行为

用户第一次消费

image.png
用户第一次购买集中在4月份,之后4月末出现剧烈波动,骤然下滑。
7至9月,新客每天稳步增长;10月,11月两月新客较少;整体新客数量呈现下滑趋势。

用户最后一次消费

image.png
用户最后一次购买集中在7月中旬至9月中旬,4月至7月客户流失较少。

新老客消费占比
user_life=df_user.event_time.agg(['min','max'])
user_life.head()

image.png

(user_life['min']==user_life['max']).value_counts()

image.png
有一半用户,只消费了一次。

用户分层(RFM)
rfm=df_["2020-04":"2020-11"].pivot_table(index='user_id',values=['price','event_type','event_time'],aggfunc={'price':'sum','event_type':'count','event_time':'max'})
rfm.head()

image.png

rfm['R']=-(rfm.event_time-rfm.event_time.max())/np.timedelta64(1,'D')
rfm.head()

image.png

rfm.rename(columns={'event_type':'F','price':'M'},inplace=True)
rfm['label'] = rfm[['R','F','M']].apply(lambda x:x-x.mean()).apply(rfm_func,axis=1)
rfm

image.png

rfm.groupby('label').agg(['sum','mean','count'])

image.png
上表可见

  1. 重要客户平均购买频次低于一般客户,但重要客户平均消费远超为一般客户人均消费;
  2. 重要客户总数为一半客户1/3,但重要客户消费金额约为一般客户的10倍;
  3. 重要客户平均购买频次低于一般客户;
  4. 在最近一次购买时期上,重要客户同一般客户没有明显区别;

image.png

rfm.head()

image.png

用户生命周期(第一次和最后一次)
用户周期描述
((user_life['max']-user_life['min'])/np.timedelta64(1,'D')).describe()

image.png

用户周期分布

image.png
用户周期分布,平均生命周期为22天 绝大多数用户生命周期为0天,说明新客流失严重。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/196248.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是CDN?什么是安全加速CDN?有什么优势?

安全加速CDN(Content Delivery Network)是一种网络架构,它通过在全球范围内部署服务器并缓存静态和动态内容来提供更快的Web页面加载和更好的用户体验。安全加速CDN可以保护网站免受DDoS攻击、恶意软件和其他安全威胁,从而提高网站的可用性和稳定性。它通…

基于ssm+vue交通事故档案系统

摘要 摘要是对文章、论文或其他文本的主要观点、结论和关键信息的简洁概括。由于你没有提供具体的文章或主题,我将为你创建一个通用的摘要。 本文介绍了一种基于SSM(Spring Spring MVC MyBatis)和Vue.js的交通事故档案管理系统的设计与实现…

Unity之NetCode多人网络游戏联机对战教程(9)--NetworkAnimator组件

文章目录 前言NetworkAnimatorAnimator的Trigger属性服务器权威模式(Server Authoritative Mode)客户端权威模式 (Owner Authoritative Mode)学习文档 前言 这个组件是NetCode常用的组件之一,NetworkAnimator跟NetworkTransform一样&#xf…

string类的总结

目录 1.为什么要学习string类 2.string的标准库 3.string类的常用接口说明 1.string类对象的常见构造 2.string类对象的容量操作 3.string类对象的3种遍历方法 3.1 [ ] 下标 3.2 基于范围的for循环 3.3 迭代器 4 string类对象的元素访问 4.1 operator[]: 4.…

抖音直播间涨粉助手,其开发流程与需要的技术和代码分享

先来看实操成果,↑↑需要的同学可看我名字↖↖↖↖↖,或评论888无偿分享 一、直播间涨人气的15种方法 直播间的人气就像水池中的水,想要有源源不断的流量,就要想办法把水龙头的水流开到最大,也就是要增加直播间曝光率&…

LLM大模型量化原理

大型语言模型(LLM)可以用于文本生成、翻译、问答任务等。但是,LLM 也非常大(显然,大型语言模型)并且需要大量内存。 这对于手机和平板电脑等小型设备来说可能具有挑战性。 可以将参数乘以所选的精度大小以…

使用maven命令打包依赖

1、maven仓库地址 阿里云地址:https://developer.aliyun.com/mvn/search 中央仓库地址:https://mvnrepository.com/ 2、下载方式 在地址栏中输入要搜索的依赖 选择需要的版本 (1)直接复制 (2)pom下载 …

毅速丨金属3D打印将为模具制造企业带来变革

金属3D打印技术的发展给模具制造带来了巨大的创新价值,包括重塑产品、重组制造、重构业务。 首先,3D打印技术可以大幅度缩短模具制造的生产周期,提高生产效率。传统的模具制造需要经过多个工序和加工过程,而3D打印技术通过打印完成…

Struts2 数据校验之四兄弟

现在是科技的时代,大多数人都在网上购物了, 我们都碰到过相同的问题,各大网站弄的那些各种各样的注册页面,相信大家都深有体会。 有了这验证就很好的保证了我们的信息的准确性和安全性。 接下来我给大家讲解一下用struts2怎么实…

开启数据库审计 db,extended级别或os级别)并将审计文件存放到/opt/oracle/audit/下

文章目录 1、登录到数据库2、查看审计状态3、创建审计目录4、启用审计5、设置审计文件路径6、再次查看结果 1、登录到数据库 使用SQL*Plus或者其他Oracle数据库客户端登录到数据库。 sqlplus / as sysdba;2、查看审计状态 show parameter audit;目前是DB状态,并且…

三菱FX3U小项目—运料小车自动化

目录 一、项目描述 二、IO口分配 三、项目流程图 四、项目程序 五、总结 一、项目描述 设备如下图所示,其中启动按钮SB1用来开启运料小车,停止按钮SB2用来手动停止运料小车(其工作方式任务模式要求)。当小车在原点SQ1位置,按下启动按钮S…

【Gradle构件工具深度学习】

Gradle构件工具深度学习 1. 课程大纲1.1 Gradle入门1.2 与Idea整合1.3 Gradle进阶 2. 常见项目构建工具3. 安装gradle 1. 课程大纲 1.1 Gradle入门 基本介绍、常用指令、项目目录、项目应用 1.2 与Idea整合 Groovy语法、整合IDEA、搭建web工程、项目部署 1.3 Gradle进阶 生命周…

CVE-2021-42287CVE-2021-42278 域内提权

倘见玉皇先跪奏:他生永不落红尘 本文首发于先知社区,原创作者即是本人 前言 网络安全技术学习,承认⾃⼰的弱点不是丑事。只有对原理了然于⼼,才能突破更多的限制。拥有快速学习能力的白帽子,是不能有短板的&#xf…

【HarmonyOS开发】配置开发工具DevEco Studio

1、下载 注意: 1、安装过程中,一定要自定义安装位置,包比较大,包比较大,包比较大!!! 2、可以将该工具添加到右键中,否则,如果你的项目不是HarmonyOS&#xff…

基于PLC的污水厌氧处理控制系统(论文+源码)

1. 系统设计 污水厌氧由进水系统通过粗格栅和清污机进行初步排除大块杂质物体以及漂浮物等,到达除砂池中。在除砂池系统中细格栅进一步净化污水厌氧中的细小颗粒物体,将污水厌氧中的细小沙粒滤除后进入氧化沟反应池。在该氧化沟系统中进行生化处理&…

Android 实现三维空间坐标系(WebView与JS交互,支持多条曲线,可设置坐标轴翻转等)

全部代码已经上传&#xff0c;点击上方进行下载 支持多条曲线的绘制&#xff0c;可旋转拖动放大缩小 1.布局文件&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/…

vb.net U盘或移动硬盘 插入 自动(静默)复制指定格式文件

U盘或移动硬盘 插入 自动复制指定格式文件至系统盘符 开发语言&#xff1a;vb.net 重要申明&#xff1a;该程序只是防止本人不在电脑旁时&#xff0c;别人偷偷copy你的电脑文件&#xff0c;让他偷鸡成了也要蚀把米。严禁从事黑客或违反道德等不良行为&#xff0c;故而不发布程…

阶段七-Day02-SpringMVC

一、Restful请求格式 1. 介绍 Rest(Representational State Transfer&#xff1a;表现层状态转移)是一种软件架构风格&#xff0c;其核心是面向资源的一种设计。何为面向资源&#xff0c;意思是网络上的所有事物都可以抽象为资源&#xff0c;而每个资源都有唯一的资源标识&…

UnoCss(原子化css引擎) 让你的开发更轻松愉快

什么是原子化CSS&#xff0c;UnoCSS又是什么&#xff0c;对此有疑问的推荐看下antfu的这篇文章——重新构想原子化 CSS (antfu.me) 相信看完这篇文章的你也会跟我一样热衷于UnoCSS. 介绍 今天介绍一个CSS开发利器 UnoCSS , 是一个具有高性能且极具灵活性的即时原子化 CSS 引擎…

识别代理IP:保障网络安全的重要一环

在互联网的世界中&#xff0c;代理服务器被广泛用于隐藏用户真实IP地址&#xff0c;带来了一些挑战&#xff0c;特别是在网络安全和欺诈检测方面。本文将探讨如何识别代理IP&#xff0c;以确保网络的安全性和可靠性。 1. 代理IP的背景与用途 代理服务器是位于用户和目标服务器…