(下面是数据分析相关的项目,可以提点修改意见哦)
任务背景
本周的任务是协助小红书分析不同的业务决策所带来的销售额变化。说到小红书,是目前非常热门的电商平台。
和其他电商平台不同,小红书是从社区起家。在小红书社区,用户通过文字、图片、视频笔记的分享,记录了这个时代年轻人的正能量和美好生活。
小红书通过机器学习对海量信息和人进行精准、高效匹配,已累积海量的海外购物数据,分析出最受欢迎的商品及全球购物趋势,并在此基础上把全世界的好东西,以最短的路径、最简洁的方式提供给用户。
任务说明
本周你的任务就是根据用户数据以及消费行为数据,完成以下事项:
• 使用Python建立线性回归模型
• 预测用户的消费金额变化
• 找到对用户消费影响较大的因素
一、数据概况分析
1、业务问题
• 使用Python建立线性回归模型
• 预测用户的消费金额变化
• 找到对用户消费影响较大的因素
2、数据收集与评估
需要的数据支持:
• 用户购买金额
• 用户属性信息
• 用户购买行为特征
数据收集来源:小红书数据(此数据由小灶能力派提供)
![e48e4186f6a08ab25a9cc78903453bda.png](https://i-blog.csdnimg.cn/blog_migrate/55211c7fc4edbf36de394a9ec1587f87.jpeg)
3、数据整理与清洗
查看数据
red.head()
![e1cb84233d5956d3c1a3392502f5af6a.png](https://i-blog.csdnimg.cn/blog_migrate/991db10ca5ae96fc8ab6738bb4f52bf2.png)
预测目标:revenue用户下单金额
用户自然属性:gender性别
age年龄
用户行为特征:lifecycle生命周期 (A注册6个月内,B注册1年内,C注册2年内)
engaged_last_30最近30天在APP上参与重要活动
days_since_last_order 最近一次下单距今天数(小于1代表当天下单)
previous_order_amount 用户以往累积购买金额
3rd_party_stores用户过往在第三方APP购买的数量(0代表只在自营产品中购买)
检查数据是否有缺失值:可看到数据共29452行,字段gender、age、engaged_last_30存在缺失值;且字段gender、engaged_last_30数据类型错误,应该为object类型
![37dcda827c24df90bdd706a9c1610bd9.png](https://i-blog.csdnimg.cn/blog_migrate/5e9360632fd54b43ed38057e6d9a8211.png)
检查数据是否有异常值:可以看出字段revenue和previous_order_amount的标准差都比较大,数据或许有离群值
red.describe()
![61e01f23f86c6742000cd7858515ed19.png](https://i-blog.csdnimg.cn/blog_migrate/c9cd20b28f3bb14efc87e81e3dcfa972.png)
数据清洗:
对于字段gender、age、engaged_last_30存在缺失值进行统计,缺失值占比约为40%,不能直接删除缺失值,否则会损失非常多的数据
red.isnull().sum()/len(red)
![ce732d2d3bb2d50e301c082c2a909d4a.png](https://i-blog.csdnimg.cn/blog_migrate/94bf6a29b713601be315447295377457.png)
缺失值的处理:先处理连续变量,再处理类别型变量,会使得整个处理变得很简单
连续型变量:均值填充、中位数填充或者数据模型填充等方法
red.loc[~red['age'].isna(),'age'].describe()
#注意:看age去除缺失值外的统计值,筛选用loc,判断是否是缺失值用isna,否定条件用~