Skip to content
Predicting Customer Churn in Python
Predicting Customer Churn
Mô tả dữ liệu Churn.csv:
- CustServ_Calls: số cuộc gọi dịch vụ mà khách hàng đã thực hiện
- Vmail_Message: số tin nhắn thoại mà khách hàng đã thực hiện
- Intl_Mins: thời lượng cuộc gọi quốc tế (phút)
- Day_Mins: thới lượng cuộc gọi ngày (phút)
- Night_Mins: thời lượng cuộc gọi đêm (phút)
- Eve_Mins: thời lượng cuộc gọi tối (phút)
- State: nơi ở của khách hàng (bang)
- Intl_Plan: gói cước quốc tế (no: không và yes: có)
- Vmail_Plan: gói cước tin nhắn thoại (no: không và yes: có)
- Churn: cho biết khách hàng có bỏ dịch vụ không (no: không và yes: có)
# Import any packages you want to use here
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.preprocessing import StandardScalerAdd your notes here
# Add your code snippets here
telco = pd.read_csv('datasets/Churn.csv')
telco.head()telco.info()1. Exploratory Data Analysis
telco['Churn'].value_counts() # Xem có bao nhiêu người hủy dịch vụ (churner)Có 2850 non-churners và 483 churners.
Ta xem xét sự khách nhau giữa khách hàng ở lớp 'yes' và lớp 'no'.
# Trung bình số cuộc gọi và số tin nhắn thoại
telco.groupby(['Churn'])['CustServ_Calls', 'Vmail_Message'] .mean().round(2)# Độ lệch chuẩn của số cuộc gọi và số tin nhắn thoại
telco.groupby(['Churn'])['CustServ_Calls', 'Vmail_Message'] .std().round(2)Nhận xét: Những churner:
- Thực hiện nhiều cuộc gọi hơn non-churner
- Thực hiện ít tin nhắn thoại hơn non-churner
# Đếm số lượng churner theo bang
telco.groupby('State')['Churn'].value_counts()Kiểm tra phân phối của một số biến.