文章目录
一、项目背景和需求
1 项目背景及分析目的
关于用户留存有这样一个观点,如果将用户流失率降低5%,公司利润将提升25%-85%。如今高居不下的获客成本让电信运营商遭遇“天花板”,甚至陷入获客难的窘境。随着市场饱和度上升,电信运营商亟待解决增加用户黏性,延长用户生命周期的问题。因此,电信用户流失分析与预测至关重要。
因此本项目基于电信运营商客户数据集,在mysql关系型数据库,探索电信用户流失原因,预测留住客户的行为,并制定有针对性的客户保留计划。
二、理解数据
2.1 数据来源
数据集来自kaggle:
https://www.kaggle.com/datasets/blastchar/telco-customer-churn
2.2 数据理解并确定问题
电信运营商客户数据集有21个字段(20个输入特征以及1个目标特征),共7043条记录,每条记录包含了唯一客户的特征。目标特征为是否为流失顾客,输入特征包括:顾客Id,性别,是否老年人,是否有伴侣,是否有小孩,已使用年限,是否使用电话服务,是否使用网络服务,服务合同期限,支付方式、账单类型、月消费、总消费等一系列描述。
列名称 | 说明 |
---|---|
Customer ID | 整数类型,序列化后的用户ID |
gender | 字符串类型,Female/male |
SeniorCitizen | 整数类型,表示是否为老年人(1为是,0为否) |
Partner | 字符串,表示客户是否有伴侣(yes/no) |
Dependents | 字符串,表示客户是否有家属(yes/no) |
tenure | 整数类型,表示客户入网时长(以月为单位) |
Contract | 字符串,表示合同条款 |
PaperlessBilling | 字符串,表示是否有无纸化账单(yes/no) |
PaymentMethod | 枚举类型,表示支付方式 (Electronic check, Mailed check, Bank transfer (automatic), Credit card (automatic)) |
Churn | 字符串,表示客户是否流失(yes/no) |
- PhoneService: 是否订购电话服务Whether the customer has a phone service or not (Yes, No)
- MultipleLines:Whether the customer has multiple lines or not (Yes, No, No phone service)
- InternetService:Customer’s internet service provider (DSL, Fiber optic, No)
- OnlineSecurity:Whether the customer has online security or not (Yes, No, No internet service)
- OnlineBackup:Whether the customer has online backup or not (Yes, No, No internet service)
- DeviceProtection:Whether the customer has device protection or not (Yes, No, No internet service)
- TechSupport:Whether the customer has tech support or not (Yes, No, No internet service)
- StreamingTV:Whether the customer has streaming TV or not (Yes, No, No internet service)
- StreamingMovies: Whether the customer has streaming movies or not (Yes, No, No internet service)
- MonthlyCharges:每月消费 The amount charged to the customer monthly
- TotalCharges:总消费The total amount charged to the customer
此次我们目标就是发现前20列特征和最后一列客户是否流失特征之间的关系。
2.3 问题确认
- 顾客为什么会流失?可以先进行思考,流失的第一个原因,相信也是绝大多数流失客户给出的答案,就是“电信公司所提供的服务让我无法满意”,这是从公司产品的维度给出的回答。第二个原因,顾客因为个人情况,比如年纪大需求发生变化,从而流失,这是从个人属性变化的角度给出的回答。第三个原因,支付方式、合同签订不合理或者周期时间问题导致客户产生不满意的情绪,这是从合同/消费的维度给回回答。
- 从整体情况看,流失用户的普遍具有哪些特征?
三、数据清洗
数据清洗的“完全合一”规则:
完整性:单条数据是否存在空值,统计的字段是否完善。
全面性:观察某一列的全部数值,通过常识来判断该列是否有问题,比如:数据定义、单位标识、数据本身。
合法性:数据的类型、内容、大小的合法性。比如数据中是否存在非ASCII字符,性别存在了未知,年龄超过了150等。
唯一性:数据是否存在重复记录,因为数据通常来自不同渠道的汇总,重复的情况是常见的。行数据、列数据都需要是唯一的。
3.1 导入数据
点开Mysql workbench
①新建一个库
代码如下(示例):
DROP DATABASE IF EXISTS `Telco_Customer_Churn`;
CREATE DATABASE `Telco_Customer_Churn`;
USE `Telco_Customer_Churn`;
②导入外部数据,在Telco_Customer_Churn数据库中建立customer_details,因为数据只有7000多条可以直接将csv文件数据导入进mysql中的customer_details。
③查看数据,对应2.2数据理解,从数据面板发现一些字段的数据类型需要修改。
3.2数据清洗
3.2.1 查看数据大小
查看数据集信息,查看数据集大小,并初步观